در این مطلب، ویدئو پایتون: مرتب سازی لیست پیوندی با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:02,490
سلام، من جو جیمز هستم و در این ویدیو
2
00:00:02,490 –> 00:00:04,290
به شما نشان می دهم که چگونه یک لیست پیوندی را
3
00:00:04,290 –> 00:00:08,280
در پایتون مرتب کنید، بنابراین در اینجا یک
4
00:00:08,280 –> 00:00:10,410
لیست پیوندی ساده با سه گره در آن وجود دارد،
5
00:00:10,410 –> 00:00:12,210
ما یک اشاره گر به گره اصلی خود داریم که
6
00:00:12,210 –> 00:00:14,849
هر گره دارای پنج است. یک اشاره گر به گره بعدی
7
00:00:14,849 –> 00:00:16,619
و همچنین دارای یک قطعه داده است،
8
00:00:16,619 –> 00:00:19,140
باید توجه داشته باشید که آخرین گره گره
9
00:00:19,140 –> 00:00:20,960
بعدی ندارد که هیچ گره دیگری نخواهد بود،
10
00:00:20,960 –> 00:00:24,859
زیرا ما گره بعدی
11
00:00:24,859 –> 00:00:27,750
نداریم، بنابراین روند ما برای مرتب سازی
12
00:00:27,750 –> 00:00:29,699
لیست پیوندی آنچه که ما داریم این کار را انجام می دهیم این است که
13
00:00:29,699 –> 00:00:31,740
از طریق لیست پیوندی،
14
00:00:31,740 –> 00:00:35,370
هر گره را به لیست پایتون اضافه کنیم، بنابراین
15
00:00:35,370 –> 00:00:37,489
لیستی از گره های پایتون خواهیم داشت و
16
00:00:37,489 –> 00:00:39,899
سپس لیست پایتون را
17
00:00:39,899 –> 00:00:41,340
به ترتیب نزولی مرتب می کنیم
18
00:00:41,340 –> 00:00:44,700
. به عبارت دیگر ابتدا بالاترین و در آخر
19
00:00:44,700 –> 00:00:45,960
ما دوباره از طریق آن
20
00:00:45,960 –> 00:00:48,210
لیست پایتون تکرار می کنیم و
21
00:00:48,210 –> 00:00:50,969
هر یک از آن گره ها را به یک لیست پیوندی جدید اضافه می کنیم،
22
00:00:50,969 –> 00:00:53,910
اکنون به یاد می آورید که وقتی یک گره جدید را
23
00:00:53,910 –> 00:00:56,489
به لیست پیوندی وارد می کنیم، آن را اضافه می کنیم. از
24
00:00:56,489 –> 00:00:58,890
همان ابتدا، بنابراین با
25
00:00:58,890 –> 00:01:00,899
افزودن بالاترین مورد به لیست پیوند شده و
26
00:01:00,899 –> 00:01:03,570
سپس افزودن descen شروع می کنیم موارد را به
27
00:01:03,570 –> 00:01:05,129
همان ابتدای لیست بفرستید، بنابراین
28
00:01:05,129 –> 00:01:07,020
وقتی کارمان تمام شد، یک لیست کاملا مرتب شده به
29
00:01:07,020 –> 00:01:11,990
ترتیب ارسال
30
00:01:11,990 –> 00:01:14,040
31
00:01:14,040 –> 00:01:16,020
32
00:01:16,020 –> 00:01:19,080
خواهیم داشت. ما Big O از n زمان
33
00:01:19,080 –> 00:01:20,850
چون اساساً در حال لمس فضایی از داده ها هستیم،
34
00:01:20,850 –> 00:01:24,060
می خواهیم لیست پایتون را به
35
00:01:24,060 –> 00:01:26,280
ترتیب نزولی مرتب کنیم بهترین کاری که می توانیم
36
00:01:26,280 –> 00:01:29,040
در یک مرتب سازی انجام دهیم این است که O Big O از n ورود به سیستم،
37
00:01:29,040 –> 00:01:30,240
اما واقعاً توسط یک مدیریت می شود.
38
00:01:30,240 –> 00:01:32,970
کتابخانه پایتون و سپس شماره سه را
39
00:01:32,970 –> 00:01:33,930
40
00:01:33,930 –> 00:01:35,909
دوباره از طریق لیست پایتون تکرار می کنیم،
41
00:01:35,909 –> 00:01:38,610
هر گره را به یک لیست پیوندی جدید اضافه می کنیم و
42
00:01:38,610 –> 00:01:41,430
این برای ما هزینه زیادی دارد از n زمان،
43
00:01:41,430 –> 00:01:43,590
بنابراین کل عملیات مرتب سازی هزینه خواهد داشت.
44
00:01:43,590 –> 00:01:46,020
ما بدترین این سه مورد است که
45
00:01:46,020 –> 00:01:48,299
O Big O از n log N است و این تابع مرتب سازی
46
00:01:48,299 –> 00:01:50,549
است، فقط راهی برای سرعت بخشیدن
47
00:01:50,549 –> 00:01:54,439
به روش مرتب سازی فراتر از Big O از n log N
48
00:01:54,439 –> 00:01:57,149
دوباره وجود ندارد.
49
00:01:57,149 –> 00:01:59,280
باید
50
00:01:59,280 –> 00:02:01,619
مرتب سازی منظم روی آن انجام دهید،
51
00:02:01,619 –> 00:02:03,119
ساختارهای داده بسیار بهتری از جمله فقط وجود دارد یک
52
00:02:03,119 –> 00:02:05,009
لیست استاندارد پایتون اگر نیاز دارید که
53
00:02:05,009 –> 00:02:06,409
دادههای خود را مرتبا مرتب کنید،
54
00:02:06,409 –> 00:02:08,580
اما از آنجایی که من درخواستهای زیادی دریافت میکنم که
55
00:02:08,580 –> 00:02:10,919
چگونه یک لیست پیوندی را مرتب میکنید،
56
00:02:10,919 –> 00:02:12,390
میخواستم ویدیویی
57
00:02:12,390 –> 00:02:13,319
در مورد آن تهیه کنم که به شما نشان دهد چگونه
58
00:02:13,319 –> 00:02:15,959
این کار را انجام دهید، بنابراین ابتدا کدی را که
59
00:02:15,959 –> 00:02:18,269
یک تابع اضافه گره را به لیست پیوندی خود اضافه
60
00:02:18,269 –> 00:02:21,590
می کنیم تا بتوانیم یک گره اضافه
61
00:02:21,590 –> 00:02:23,670
کنیم، قبلاً این تابع افزودن را
62
00:02:23,670 –> 00:02:25,499
داشتیم که می توانستیم پارامتری را
63
00:02:25,499 –> 00:02:27,359
که قطعه ای از داده است ارسال کنیم، اکنون من نمی
64
00:02:27,359 –> 00:02:29,609
توانم آن را در گره را اضافه کنید
65
00:02:29,609 –> 00:02:31,319
و آن را به لیست پیوندی اضافه کنید و آن را
66
00:02:31,319 –> 00:02:33,439
فقط به همان ابتدای لیست اضافه می کند،
67
00:02:33,439 –> 00:02:35,909
بنابراین پارامتری را که
68
00:02:35,909 –> 00:02:37,859
در گره ای که ارسال کرده ایم، می گیریم و
69
00:02:37,859 –> 00:02:40,319
گره بعدی آن را روی گره اصلی قرار می دهیم.
70
00:02:40,319 –> 00:02:43,919
گره ریشه را روی گره جدید تنظیم می کنیم و سپس
71
00:02:43,919 –> 00:02:45,659
اندازه را یک بار افزایش می دهیم، بنابراین اساساً
72
00:02:45,659 –> 00:02:47,370
این گره جدید را در
73
00:02:47,370 –> 00:02:49,950
همان ابتدای لیست وارد می کنیم، اکنون اجازه دهید ابتدا به
74
00:02:49,950 –> 00:02:51,959
تابع مرتب سازی نگاه کنیم که هیچ پارامتری را نمی گیرد.
75
00:02:51,959 –> 00:02:54,449
76
00:02:54,449 –> 00:02:56,280
اگر اندازه یک یا کمتر باشد، می خواهیم بررسی کنیم که آیا اندازه بزرگتر از یک
77
00:02:56,280 –> 00:02:58,680
است یا خیر
78
00:02:58,680 –> 00:03:00,560
چیزی برای مرتب سازی وجود ندارد تا بتوانیم برگردیم،
79
00:03:00,560 –> 00:03:03,449
سپس یک لیست جدید ایجاد می ک