در این مطلب، ویدئو طراحی صف دایره ای – Leetcode 622 – Python با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:17:50
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:02,720
به کد آموزشی dot io
2
00:00:02,720 –> 00:00:05,279
مراجعه کنید تا 10 عدد در اشتراک خود صرفه جویی کنید
3
00:00:05,279 –> 00:00:07,440
تا در یک لحظه، همه خوش
4
00:00:07,440 –> 00:00:09,040
آمدید و بیایید امروز کدهای دقیق تری بنویسیم،
5
00:00:09,040 –> 00:00:11,040
بنابراین امروز بیایید مشکل را حل کنیم
6
00:00:11,040 –> 00:00:13,920
طراحی یک صف دایره ای اساساً ما
7
00:00:13,920 –> 00:00:15,679
می خواهیم این ساختار داده را پیاده سازی کنیم. یک
8
00:00:15,679 –> 00:00:18,480
صف دایرهای که در آن عملیات به
9
00:00:18,480 –> 00:00:21,920
ترتیب پنجاه انجام میشود، بنابراین وقتی
10
00:00:21,920 –> 00:00:23,600
عناصری را به صف اضافه
11
00:00:23,600 –> 00:00:25,359
میکنیم، مواردی را
12
00:00:25,359 –> 00:00:27,599
که ابتدا درج شدهاند حذف میکنیم، بنابراین میدانید که
13
00:00:27,599 –> 00:00:29,599
فرض کنید یکی را اضافه کردهایم، دو را
14
00:00:29,599 –> 00:00:31,199
اضافه کردهایم، سه اضافه کردهایم، سپس زمان آن فرا رسیده است. برای حذف
15
00:00:31,199 –> 00:00:33,360
عناصر، اولین مورد حذف شده را اضافه می کنیم،
16
00:00:33,360 –> 00:00:35,280
سپس دومی،
17
00:00:35,280 –> 00:00:37,440
سومی و غیره، بنابراین اساساً همان چیزی است
18
00:00:37,440 –> 00:00:39,680
که شما از یک ساختار داده صف انتظار دارید،
19
00:00:39,680 –> 00:00:41,360
اما در این مورد،
20
00:00:41,360 –> 00:00:43,600
دایره ای خواهد بود و در واقع این واقعیت است
21
00:00:43,600 –> 00:00:45,360
که صف دایره ای واقعاً به
22
00:00:45,360 –> 00:00:47,520
معنایی نیست که ما آن را پیاده سازی می
23
00:00:47,520 –> 00:00:49,920
کنیم، بنابراین واقعاً دو راه اصلی وجود دارد که
24
00:00:49,920 –> 00:00:52,160
می توانید این مشکل را پیاده سازی کنید، یکی
25
00:00:52,160 –> 00:00:55,360
استفاده از آرایه ها است و این راهی نیست که من
26
00:00:55,360 –> 00:00:56,640
انجام دهم. فقط به این دلیل که
27
00:00:56,640 –> 00:00:58,239
فکر میکنم انجام آن به روشی دیگر کمی بصریتر است
28
00:00:58,239 –> 00:01:00,559
که
29
00:01:00,559 –> 00:01:02,640
میتواند آن را بهعنوان یک لیست پیوندی پیادهسازی کند،
30
00:01:02,640 –> 00:01:05,199
من فکر
31
00:01:05,199 –> 00:01:07,439
میکنم انجام آن به این روش کمی شهودیتر است، فکر میکنم
32
00:01:07,439 –> 00:01:09,600
کمی کد بیشتری دارد، اما کمی هم
33
00:01:09,600 –> 00:01:11,520
است. کارآمدتر است زیرا با
34
00:01:11,520 –> 00:01:14,640
آرایهای که قرار است داشته باشید،
35
00:01:14,640 –> 00:01:16,799
میدانید که اندازه صف
36
00:01:16,799 –> 00:01:18,560
یک پارامتر ورودی است که به ما داده میشود که
37
00:01:18,560 –> 00:01:20,720
k است، باید آرایهای به آن اندازه ایجاد کنیم،
38
00:01:20,720 –> 00:01:23,200
اما با لیستهای پیوندی که
39
00:01:23,200 –> 00:01:24,960
واقعاً نیازی به انجام آن نداریم، ما
40
00:01:24,960 –> 00:01:26,960
فقط به اندازهای که
41
00:01:26,960 –> 00:01:29,280
عناصر در صف در هر نقطه
42
00:01:29,280 –> 00:01:31,680
از زمان وجود دارد به حافظه نیاز داریم، اما فقط برای اینکه به شما
43
00:01:31,680 –> 00:01:34,079
ایده بدهیم که چگونه با یک آرایه پیش میرود،
44
00:01:34,079 –> 00:01:36,960
فرض کنید میدانید k برابر با سه است، پس
45
00:01:36,960 –> 00:01:39,759
ما سه عنصر خواهیم داشت، بنابراین آرایه
46
00:01:39,759 –> 00:01:41,520
ما به اندازه سه خواهد بود، فرض کنید یک اضافه می
47
00:01:41,520 –> 00:01:44,000
کنیم خوب، سپس یک دو را اضافه می کنیم، سپس یک سه اضافه می کنیم
48
00:01:44,000 –> 00:01:45,920
و سپس زمانی که
49
00:01:45,920 –> 00:01:47,360
یک عنصر ظاهر می شود، البته ما می رویم.
50
00:01:47,360 –> 00:01:49,439
از سمت چپ ظاهر شود، بنابراین بسیار خوب، ما
51
00:01:49,439 –> 00:01:51,759
آنجا را حذف می کنیم، اما اکنون زمان آن است که دیگری اضافه کنیم
52
00:01:51,759 –> 00:01:53,680
عنصر فرض کنید میخواهیم مقدار 4 را اضافه کنیم
53
00:01:53,680 –> 00:01:56,560
. خوب اینجا فضایی وجود ندارد اما اینجا فضای خالی
54
00:01:56,560 –> 00:01:58,960
وجود دارد، بنابراین ما
55
00:01:58,960 –> 00:02:01,759
4 را در اینجا اضافه میکنیم و
56
00:02:01,759 –> 00:02:03,920
ایده یک صف دایرهای از اینجا میآید
57
00:02:03,920 –> 00:02:05,600
زیرا اکنون میتوانیم در طرف دیگر اضافه کنیم.
58
00:02:05,600 –> 00:02:07,520
از آن، اما احتمالاً اکنون به این فکر می کنید که
59
00:02:07,520 –> 00:02:09,440
اگر مجبور باشیم یک عنصر را پاپ کنیم، آیا
60
00:02:09,440 –> 00:02:11,280
این چهار عنصر را پاپ می کنیم زیرا این درست نیست،
61
00:02:11,280 –> 00:02:14,160
باید این دو را پاپ کنیم و بله
62
00:02:14,160 –> 00:02:15,920
، اگر مجبور باشیم
63
00:02:15,920 –> 00:02:17,440
یک مقدار را همانطور که می خواهیم ایجاد کنیم، آن دو را پاپ می کنیم. به هر حال،
64
00:02:17,440 –> 00:02:19,120
این را
65
00:02:19,120 –> 00:02:21,360
با دو نشانگر اجرا میکنم، بنابراین اولین اشارهگر
66
00:02:21,360 –> 00:02:23,280
این است که
67
00:02:23,280 –> 00:02:25,599
جلوی صف را میدانید و
68
00:02:25,599 –> 00:02:27,520
دیگری انتهای صف،
69
00:02:27,520 –> 00:02:29,520
پشت صف، حدس میزنم که قسمت عقب آن را
70
00:02:29,520 –> 00:02:31,840
نمیداند. اینجا باشید در این مورد عقب در
71
00:02:31,840 –> 00:02:33,760
واقع چهار خواهد بود زیرا چهار
72
00:02:33,760 –> 00:02:36,000
آخرین مقداری است که ما به تازگی اضافه کردهایم، بنابراین
73
00:02:36,000 –> 00:02:37,840
میدانید که بیایید بگوییم که ما این دو را میزنیم، خوب،
74
00:02:37,840 –> 00:02:40,480
ما آن دو را باز کردیم، سپس میگوییم که
75
00:02:40,480 –> 00:02:42,879
این قسمت جلوی صف ما است.
76
00:02:42,879 –> 00:02:44,879
حالا اگر بخواهیم یک نشانه اضافه کنیم، این
77
00:02:44,879 –> 00:02:46,800
دیگر جلوی عقب نیست صف ما
78
00:02:46,800 –> 00:02:48,560
هنوز در اینجا تمام شده است،
79
00:02:48,560 –> 00:02:50,959
اگر بخواهیم مقدار دیگری اضافه کنیم، آن را بعد از قسمت
80
00:02:50,959 –> 00:02:53,040
عقب اضافه می کنیم، بنابراین مقدار را در اینجا اضافه
81
00:02:53,040 –> 00:02:54,879
می کنیم تا منطقی باشد و
82
00:02:54,879 –> 00:02:57,120
اجرای آن به این شکل خیلی سخت نیست، اما
83
00:02:57,120 –> 00:02:58,480
ما این کار را خواهیم کرد. اگر آن را
84
00:02:58,480 –> 00:03:00,000
کمی متفاوت پیاده سازی کنیم، از
85
00:03:00,000 –> 00:03:01,920
یک لیست پیوندی استفاده می کنیم، بنابراین اجازه دهید به شما نشان دهم که چگونه
86
00:03:01,920 –> 00:03:03,920
این کار را انجام دهید، بنابراین ابتدا به من اجازه دهید
87
00:03:03,920 –> 00:03:05,599
عملاً عملیاتی را که می
88
00:03:05,599 –> 00:03:06,800
خواهیم پیاده سازی کنیم انجام دهم و سپس به
89
00:03:06,800 –> 00:03:08,640
شما نشان خواهم داد که چگونه می توانیم در واقع
90
00:03:08,640 –> 00:03:10,159
آنها را به طور موثر پیاده سازی می کنیم، بنابراین ما
91
00:03:10,159 –> 00:03:12,640
صف دایره ای را با
92
00:03:12,640 –> 00:03:15,200
اندازه محدود k که حداکثر
93
00:03:15,200 –> 00:03:17,120
تعداد عناصری است که می توانیم در آن
94
00:03:17,120 –> 00:03:19,440
داشته باشیم مقداردهی اولیه کنیم، یک جبهه عملیاتی
95
00:03:19,440 –> 00:03:20,879
96
00:03:20,879 –> 00:03:22,640
خواهیم داشت که فرض کنید این سمت چپ است.
97
00:03:22,640 –> 00:03:24,000
جلوی صف ما است و فرض کنید
98
00:03:24,000 –> 00:03:26,640
سمت راست پشت صف ما
99
00:03:26,640 –> 00:03:28,480
است.
100
00:03:28,480 –> 00:03:32,000
101
00:03:32,000 –> 00:03:34,319
102
00:03:34,319 –> 00:03:37,120
103
00:03:37,120 –> 00:03:38,480
در پشت صف می خواهیم v را دریافت کنیم
104
00:03:38,480 –> 00:03:40,640
اگر وجود نداشته باشد می توانیم
105
00:03:40,640 –> 00:03:42,400
منفی را برگردانیم یک
106
00:03:42,400 –> 00:03:44,879
nq عملیاتی خواهد بود که
107
00:03:44,879 –> 00:03:47,680
مقداری را به انتهای صف اضافه می کند.
108
00:03:47,680 –> 00:03:50,000
109
00:03:50,000 –> 00:03:51,200
این انتهای صف است.
110
00:03:51,200 –> 00:03:53,760
به اضافه کردن مقادیر و
111
00:03:53,760 –> 00:03:56,400
اگر فضای کافی برای اضافه کردن
112
00:03:56,400 –> 00:03:58,080
یک مقدار داریم، آن را در اینجا اضافه می کنیم
113
00:03:58,080 –> 00:03:59,439
و سپس اگر
114
00:03:59,439 –> 00:04:00,959
فضای کافی نداشته باشیم، درست
115
00:04:00,959 –> 00:04:04,080
را برمی گردانیم. false به طور مشابه با dq
116
00:04:04,080 –> 00:04:05,680
جایی است که ما عناصر را حذف می کنیم،
117
00:04:05,680 –> 00:04:08,799
118
00:04:08,799 –> 00:04:10,879
119
00:04:10,879 –> 00:04:12,560
اگر عنصری برای حذف وجود داشته باشد، آن را
120
00:04:12,560 –> 00:04:14,640
حذف می کنیم و اگر
121
00:04:14,640 –> 00:04:16,399
عنصری برای حذف وجود ندارد، عناصر را از جلوی صف حذف می کنیم. ما میخواهیم برگردانیم
122
00:04:16,399 –> 00:04:19,358
false خالی است و پر است یا در واقع
123
00:04:19,358 –> 00:04:21,440
توابع کمکی تقریباً برای ما
124
00:04:21,440 –> 00:04:23,759
میتوانیم از این توابع برای
125
00:04:23,759 –> 00:04:27,280
عملیات nq و dq استفاده کنیم، بنابراین خالی است
126
00:04:27,280 –> 00:04:29,199
اساساً به ما میگوید آیا
127
00:04:29,199 –> 00:04:31,440
عناصری در صف ما وجود دارد اگر وجود داشته باشد. نه
128
00:04:31,440 –> 00:04:33,199
ما درست را برمی گردانیم اگر وجود داشته باشد
129
00:04:33,199 –> 00:04:36,000
ما false مشابه با is است پر
130
00:04:36,000 –> 00:04:38,240
است اگر فضایی باقی نمانده
131
00:04:38,240 –> 00:04:41,360
باشد، درست را برمیگردانیم، اگر فضای خالی داشته باشیم پر است،
132
00:04:41,360 –> 00:04:44,320
برای آن false برمیگردانیم، بنابراین
133
00:04:44,320 –> 00:04:45,600
میدانیم که به وضوح میدانیم که
134
00:04:45,600 –> 00:04:47,520
نیاز به تعامل زیادی با
135
00:04:47,520 –> 00:04:49,680
جلوی صف خواهیم داشت و در پشت صف،
136
00:04:49,680 –> 00:04:52,240
بنابراین سادهترین راه برای انجام این کار همانطور که
137
00:04:52,240 –> 00:04:54,240
نشان دادهام استفاده از چند گره ساختگی است،
138
00:04:54,240 –> 00:04:55,840
اگر با گرههای ساختگی آشنایی
139
00:04:55,840 –> 00:04:58,080
ندارید، اساساً فقط حذف موارد لبه
140
00:04:58,080 –> 00:05:00,240
است زیرا مقادیری را به لیست پیوندی اضافه میکنیم
141
00:05:00,240 –> 00:05:02,320
و حذف میکنیم. مقادیری که با موارد لبه زیادی مواجه میشویم
142
00:05:02,320 –> 00:05:04,800
، چه میشود اگر لیست پیوندی
143
00:05:04,800 –> 00:05:06,800
خالی باشد، چه اگر یک مقدار داشته باشد، چه
144
00:05:06,800 –> 00:05:08,400
اگر دو مقدار داشته باشد، چه اگر گرهای
145
00:05:08,400 –> 00:05:10,000
که ما به آن نگاه میکنیم در وسط
146
00:05:10,000 –> 00:05:11,919
لیست پیوندی یا در انتهای آن باشد. از
147
00:05:11,919 –> 00:05:14,000
لیست پیوندی یا در جلوی لیست پیوندی
148
00:05:14,000 –> 00:05:16,320
، تعداد زیادی از موارد لبه وجود دارد، گرههای ساختگی
149
00:05:16,320 –> 00:05:20,000
آن موارد لبه را برای ما حذف میکنند، زیرا
150
00:05:20,000 –> 00:05:21,919
یک گره سمت چپ، گره ساختگی ما در
151
00:05:21,919 –> 00:05:23,440
سمت چپ راست است، همیشه
152
00:05:23,440 –> 00:05:26,240
گره ساختگی در سمت راست خواهد بود. بنابراین هر
153
00:05:26,240 –> 00:05:28,000
مقداری که از صف اضافه یا حذف می کنیم
154
00:05:28,000 –> 00:05:29,759
همیشه در آن قرار می گیرد
155
00:05:29,759 –> 00:05:31,680
وسط صف بنابراین
156
00:05:31,680 –> 00:05:35,199
ما هیچ مورد لبه ای نداریم و همچنین اگر بخواهیم این گره ها
157
00:05:35,199 –> 00:05:37,600
می توانند به صورت لیستی به صورت منفرد پیوند داده شوند
158
00:05:37,600 –> 00:05:39,680
اما ما آنها را
159
00:05:39,680 –> 00:05:41,759
به لیست هایی با پیوند مضاعف تبدیل می کنیم زیرا همانطور که می بینید
160
00:05:41,759 –> 00:05:43,360
ما باید مقادیر را
161
00:05:43,360 –> 00:05:45,840
از اینجا بخوانیم و همچنین مقادیر را از اینجا بخوانیم، بنابراین
162
00:05:45,840 –> 00:05:47,520
ما به نشانگر دوم نیاز
163
00:05:47,520 –> 00:05:49,759
خواهیم داشت، فرض کنید میخواهیم یک مقدار اضافه
164
00:05:49,759 –> 00:05:52,080
کنیم، خوب ما فقط یک
165
00:05:52,080 –> 00:05:54,320
گره لیست پیوندی جدید ایجاد میکنیم، فرض کنید مقدار
166
00:05:54,320 –> 00:05:56,720
آن یکی است که میگوییم. خوب، گره سمت چپ
167
00:05:56,720 –> 00:05:58,720
که گره های ساختگی ما است، نشانگر بعدی است
168
00:05:58,720 –> 00:06:01,199
به جای اینکه
169
00:06:01,199 –> 00:06:03,440
به جای اشاره به گره سمت راست باشد،
170
00:06:03,440 –> 00:06:04,479
زیرا در واقع نحوه شروع
171
00:06:04,479 –> 00:06:06,479
اولیه این کار به این صورت خواهد
172
00:06:06,479 –> 00:06:08,319
بود که این دو گره قرار
173
00:06:08,319 –> 00:06:09,520
است به یکدیگر اشاره کنند و
174
00:06:09,520 –> 00:06:11,360
چیزی در وسط وجود ندارد، اما همانطور
175
00:06:11,360 –> 00:06:13,360
که یک گره جدید مانند یکی در
176
00:06:13,360 –> 00:06:14,800
وسط معرفی می کنیم، می خواهیم آشکارا
177
00:06:14,800 –> 00:06:16,639
این اشاره گرها را مجدداً مرتب کنیم، در
178
00:06:16,639 –> 00:06:18,800
واقع می گوییم که این
179
00:06:18,800 –> 00:06:21,600
اشاره گر اکنون باید به یک
180
00:06:21,600 –> 00:06:24,080
اشاره کند و به جای آن اشاره گر قبلی در اینجا باشد. از ص استفاده از پماد در سمت
181
00:06:24,080 –> 00:06:26,720
چپ باید به یکی نیز اشاره کند
182
00:06:26,720 –> 00:06:28,400
و البته نشانگرهای اینجا
183
00:06:28,400 –> 00:06:30,560
به سمت گره سمت راست اشاره می کنند
184
00:06:30,560 –> 00:06:33,039
و
185
00:06:33,039 –> 00:06:35,360
اگر بخواهیم مقدار دیگری اضافه کنیم، اکنون به سمت گره سمت چپ اشاره
186
00:06:35,360 –> 00:06:36,560
می کنند. میدانید اگر
187
00:06:36,560 –> 00:06:38,000
قبلاً برعکس آن را گفتهام، اما ما همیشه
188
00:06:38,000 –> 00:06:39,600
در اینجا مقادیر اضافه میکنیم، زیرا دقیقاً
189
00:06:39,600 –> 00:06:41,360
انتهای صف است، بنابراین در این
190
00:06:41,360 –> 00:06:43,280
مورد میتوانیم مقداری را که میدانید
191
00:06:43,280 –> 00:06:45,199
در وسط اینجا اضافه کنیم، اما واقعاً جایی که میخواهیم
192
00:06:45,199 –> 00:06:47,440
آن را اضافه کنیم، است. در اینجا، بنابراین فرض
193
00:06:47,440 –> 00:06:49,520
کنید یک دو مقدار اضافه می کنیم، بدیهی است که این
194
00:06:49,520 –> 00:06:51,120
اشاره گر که قبلاً به
195
00:06:51,120 –> 00:06:53,280
اینجا اشاره می کرد، اکنون باید به این
196
00:06:53,280 –> 00:06:55,919
گره اشاره کند، این اشاره گر که به این گره اشاره می کند،
197
00:06:55,919 –> 00:06:57,919
اکنون باید
198
00:06:57,919 –> 00:06:59,840
به این گره نیز اشاره کند. نشانگرهای
199
00:06:59,840 –> 00:07:02,880
بعدی بسیار ساده خواهند بود و
200
00:07:02,880 –> 00:07:04,960
قبلی و بقیه عملیات
201
00:07:04,960 –> 00:07:07,199
مانند خالی بودن
202
00:07:07,199 –> 00:07:09,440
پر است برای ما بسیار ساده خواهند بود زیرا
203
00:07:09,440 –> 00:07:11,360
اگر
204
00:07:11,360 –> 00:07:14,560
به ظرفیت خود رسیده باشیم فقط یک شمارنده را دنبال می کنیم از مقادیر
205
00:07:14,560 –> 00:07:16,080
سپس این تابع w به راحتی می
206
00:07:16,080 –> 00:07:18,240
توان روشی را
207
00:07:18,240 –> 00:07:19,599
که راه حل را پیاده سازی کردیم برای جلو و عقب تعیین
208
00:07:19,599 –> 00:07:21,280
کرد، بنابراین در حال حاضر اگر می
209
00:07:21,280 –> 00:07:22,880
خواهیم جلوی صف را داشته باشیم، فقط
210
00:07:22,880 –> 00:07:25,680
به اشاره گر سمت چپ خود به
211
00:07:25,680 –> 00:07:28,319
گره بعدی نگاه می کنیم و سپس آن را انتخاب می کنیم. مقدار
212
00:07:28,319 –> 00:07:30,479
آن البته فقط در صورتی که مقدار وجود داشته باشد، اگر
213
00:07:30,479 –> 00:07:32,160
وجود نداشته باشد، یک عدد منفی را برمی گردانیم،
214
00:07:32,160 –> 00:07:33,840
بنابراین در این مورد،
215
00:07:33,840 –> 00:07:36,080
اگر بخواهیم پشت صف را داشته باشیم
216
00:07:36,080 –> 00:07:38,639
، برعکس آن را با سمت راست ترین گره
217
00:07:38,639 –> 00:07:40,720
قبلی انجام می دهیم. گره
218
00:07:40,720 –> 00:07:43,360
مقدار آن را می گیرد و سپس دو را برمی گرداند اکنون آخرین
219
00:07:43,360 –> 00:07:45,120
عملیات جالبی که
220
00:07:45,120 –> 00:07:47,280
به آن نگاه نکرده ایم dq است که در
221
00:07:47,280 –> 00:07:49,280
آن باید یک مقدار را حذف کنیم، این یک
222
00:07:49,280 –> 00:07:50,879
223
00:07:50,879 –> 00:07:53,599
عملیات لیست پیوندی ساده است، بنابراین ما بدانیم که گره که
224
00:07:53,599 –> 00:07:54,800
باید حذف کنیم در اینجا تمام می شود،
225
00:07:54,800 –> 00:07:56,800
اما قبل از اینکه حتی یک
226
00:07:56,800 –> 00:07:59,360
گره را حذف کنیم، می خواهیم مطمئن شویم که
227
00:07:59,360 –> 00:08:01,680
لیست پیوندی ما خالی نیست اگر خالی باشد،
228
00:08:01,680 –> 00:08:03,280
کاری انجام نمی دهیم، اما اگر این کار
229
00:08:03,280 –> 00:08:04,879
نباشد. خالی است، سپس باید
230
00:08:04,879 –> 00:08:06,639
مقداری را که نگاه می کنیم حذف کنیم در گره سمت چپ ما
231
00:08:06,639 –> 00:08:08,080
این سمتی است که ما می خواهیم
232
00:08:08,080 –> 00:08:10,560
عناصر را از آن حذف کنیم که چگونه می خواهیم
233
00:08:10,560 –> 00:08:12,319
آن را به سادگی با به
234
00:08:12,319 –> 00:08:14,000
روز رسانی نشانگر حذف کنیم، بنابراین این نشانگر
235
00:08:14,000 –> 00:08:16,080
به جای اشاره به اینجاست، زیرا می خواهیم
236
00:08:16,080 –> 00:08:18,080
از شر آن خلاص شویم. برای به روز رسانی
237
00:08:18,080 –> 00:08:20,560
این اشاره گر نیز تا اکنون
238
00:08:20,560 –> 00:08:23,919
به گره بعدی اشاره کنیم، به طور مشابه، این گره
239
00:08:23,919 –> 00:08:25,840
ممکن است وجود داشته باشد و اگر این گره
240
00:08:25,840 –> 00:08:27,599
وجود نداشت، باید از
241
00:08:27,599 –> 00:08:29,840
این گره استفاده کنیم زیرا حداقل تضمین
242
00:08:29,840 –> 00:08:31,199
می کنیم که یک گره در آن خواهیم داشت.
243
00:08:31,199 –> 00:08:33,360
سمت راست آن اما در این مورد
244
00:08:33,360 —