1 00:00:00,000 --> 00:00:00,990 2 00:00:00,990 --> 00:00:02,970 >> [موسیقی] 3 00:00:02,970 --> 00:00:10,400 4 00:00:10,400 --> 00:00:12,550 >> DAVID J. مالان: این CS50 است. 5 00:00:12,550 --> 00:00:14,612 و این آغاز هفته سه است. 6 00:00:14,612 --> 00:00:16,820 بنابراین ما بسیاری از هیجان انگیز کردم همه چیز را به پوشش امروز. 7 00:00:16,820 --> 00:00:20,160 بسیاری از فرصت ها برای داوطلبان تا روی صحنه. 8 00:00:20,160 --> 00:00:22,780 و در نهایت، امروز است در مورد کد نیست. 9 00:00:22,780 --> 00:00:24,820 اما در مورد ایده است، و آن را در مورد الگوریتم است، 10 00:00:24,820 --> 00:00:28,420 و در واقع آوردن برخی از درس های آموخته شده از هفته صفر، 11 00:00:28,420 --> 00:00:31,910 در آن به یاد بیاورید، ما معرفی این هیولا. 12 00:00:31,910 --> 00:00:33,880 و الهام بخش استقراض از آن، شروع به 13 00:00:33,880 --> 00:00:36,879 برای حل هر چه پیچیده تر مشکلات الگوریتمی. 14 00:00:36,879 --> 00:00:38,420 اما در ابتدا، یک زن و شوهر از اطلاعیه ها. 15 00:00:38,420 --> 00:00:42,020 بنابراین یکی، اگر شما می خواهم برای پیوستن CS50 کارکنان و همکلاسی در ناهار 16 00:00:42,020 --> 00:00:44,670 این جمعه، هم در اینجا و در کمبریج، و در نیوهیون، 17 00:00:44,670 --> 00:00:48,060 مراجعه کنید البته در وب سایت، که در آن یک URL می توان یافت. 18 00:00:48,060 --> 00:00:50,390 سخنرانی روز چهارشنبه خواهد در سندرز اینجا باشد. 19 00:00:50,390 --> 00:00:53,610 این فقط آنلاین خواهد بود، بنابراین لحن در در وب سایت CS50 را، 20 00:00:53,610 --> 00:00:55,850 آیا در اینجا در کمبریج و یا نیوهیون است. 21 00:00:55,850 --> 00:00:58,110 >> و پس از آن مشکل تنظیم دو در حال حاضر در دست شما. 22 00:00:58,110 --> 00:01:03,067 اگر شما در عین حال شیرجه نمی کند، من اجازه می دهد برای ارائه پیشنهاد به شدت دقت کنید 23 00:01:03,067 --> 00:01:05,150 که، به ویژه در حال حاضر، مجموعه مسائل پیش، 24 00:01:05,150 --> 00:01:08,669 شما واقعا نمی خواهید در حال حاضر شروع، اگر نه اب شلپ شلپ کردن کمی در آخر هفته یا قبل 25 00:01:08,669 --> 00:01:10,710 وقتی اولین بار بیرون رفتن در جمعه، زیرا شما 26 00:01:10,710 --> 00:01:14,380 پیدا کردن که آنها لزوما نیست گرفتن دیگر و یا بیشتر به چالش کشیدن در 27 00:01:14,380 --> 00:01:14,950 SE. 28 00:01:14,950 --> 00:01:17,575 من فکر می کنم شما پیدا کنید که در به طور کلی، آنها تمایل به حدود 29 00:01:17,575 --> 00:01:18,892 حدود همان مقدار از زمان. 30 00:01:18,892 --> 00:01:20,850 اما مطمئنا بستگی دارد در دانش آموز، و آن 31 00:01:20,850 --> 00:01:22,880 بستگی به طرز فکر که با آن شما آن نزدیک شود. 32 00:01:22,880 --> 00:01:24,910 اما همواره، شما در حال رفتن به اجرا در برابر برخی از دیوار، 33 00:01:24,910 --> 00:01:26,350 و شما در حال رفتن به ضربه برخی از اشکال، و شما فقط 34 00:01:26,350 --> 00:01:27,950 رفتن به قادر به دریافت بیش از آن در برخی از نقطه. 35 00:01:27,950 --> 00:01:31,380 و آن را بسیار با ارزش قادر به مرحله دور، دوباره روز بعد، 36 00:01:31,380 --> 00:01:35,286 رفتن به ساعات اداری، پست در CS50 بحث یا مانند آن، در واقع باز شدن است. 37 00:01:35,286 --> 00:01:36,160 طوری نگه دارید که در ذهن است. 38 00:01:36,160 --> 00:01:40,830 شروع اولین که ممکن است بهترین کاری که می توانید انجام دهید. 39 00:01:40,830 --> 00:01:44,160 بنابراین در اینجا است که ما آغاز شده طبقه، بیش از در هفته صفر. 40 00:01:44,160 --> 00:01:47,441 و می تواند ما را دریافت کنید یک داوطلب در اینجا برای کمک به من میکروفون را پیدا کنید؟ 41 00:01:47,441 --> 00:01:47,940 باشه. 42 00:01:47,940 --> 00:01:48,900 ایستاده در حال حاضر. 43 00:01:48,900 --> 00:01:50,080 بیا بالا. 44 00:01:50,080 --> 00:01:53,707 حدس می زنم که چگونه آن را به کار است. 45 00:01:53,707 --> 00:01:54,415 نام شما چیست؟ 46 00:01:54,415 --> 00:01:55,570 ALAN استرادا: آلن استرادا. 47 00:01:55,570 --> 00:01:56,778 DAVID J. مالان: آلن استرادا. 48 00:01:56,778 --> 00:01:57,910 بیا بالا. 49 00:01:57,910 --> 00:01:58,619 از آشنایی با شما خرسندم. 50 00:01:58,619 --> 00:01:59,910 ALAN استرادا: از ملاقات شما خوشبختم. 51 00:01:59,910 --> 00:02:02,772 DAVID J. مالان: و اینجا بودی با ما در هفته صفر، البته. 52 00:02:02,772 --> 00:02:03,028 ALAN استرادا: من بود. 53 00:02:03,028 --> 00:02:03,160 بودم. 54 00:02:03,160 --> 00:02:05,868 >> DAVID J. مالان: بنابراین می تواند شما را به پیش رو و پیدا کردن برای ما مایک اسمیت، 55 00:02:05,868 --> 00:02:08,639 به همان سرعتی که شما می توانید؟ 56 00:02:08,639 --> 00:02:10,639 به همان سرعتی که شما می توانید. 57 00:02:10,639 --> 00:02:13,756 به معنای واقعی کلمه پاره شدن مشکل در نصف شما نیاز به. 58 00:02:13,756 --> 00:02:15,130 >> ALAN استرادا: ام. 59 00:02:15,130 --> 00:02:17,380 DAVID J. مالان: به معنای واقعی کلمه پاره شدن مشکل در نیم. 60 00:02:17,380 --> 00:02:20,210 61 00:02:20,210 --> 00:02:22,083 >> ALAN استرادا: اوه. 62 00:02:22,083 --> 00:02:22,583 میلی متر. 63 00:02:22,583 --> 00:02:23,300 خیلی خوب. 64 00:02:23,300 --> 00:02:23,700 >> DAVID J. مالان: OK. 65 00:02:23,700 --> 00:02:24,200 خوب است. 66 00:02:24,200 --> 00:02:24,701 متشکرم. 67 00:02:24,701 --> 00:02:25,700 ALAN استرادا: بسیار خوب. 68 00:02:25,700 --> 00:02:26,210 باشه. 69 00:02:26,210 --> 00:02:27,610 >> DAVID J. مالان: و بنابراین در حال حاضر، شما آن را محدودتر پایین را 70 00:02:27,610 --> 00:02:29,320 به نیمی از اندازه از این مشکل است. 71 00:02:29,320 --> 00:02:31,267 در حال حاضر، ما را به یک چهارم است. 72 00:02:31,267 --> 00:02:33,475 آیا شما با توجه به که به سمت ما در حال نگه داشتن؟ 73 00:02:33,475 --> 00:02:34,405 >> [خنده] 74 00:02:34,405 --> 00:02:35,970 >> ALAN استرادا: بله، من فکر می 75 00:02:35,970 --> 00:02:37,594 >> DAVID J. مالان: ما چه بخش در؟ 76 00:02:37,594 --> 00:02:39,150 ALAN استرادا: مفلرس، به طوری که. 77 00:02:39,150 --> 00:02:39,941 >> DAVID J. مالان: OK. 78 00:02:39,941 --> 00:02:42,810 اما مایک اسمیت است که پس از اگزوز می شود. 79 00:02:42,810 --> 00:02:44,130 بنابراین-- 80 00:02:44,130 --> 00:02:48,180 >> [خنده] 81 00:02:48,180 --> 00:02:48,742 >> خیلی خوب. 82 00:02:48,742 --> 00:02:50,200 ALAN استرادا: از کجا دنبال چه هستیم؟ 83 00:02:50,200 --> 00:02:52,049 DAVID J. مالان: مایک اسمیت. 84 00:02:52,049 --> 00:02:53,090 ALAN استرادا: مایک اسمیت. 85 00:02:53,090 --> 00:02:54,760 DAVID J. مالان: در حال حاضر، ما در جراحی است. 86 00:02:54,760 --> 00:02:57,840 در حال حاضر، پزشکان. 87 00:02:57,840 --> 00:02:58,340 اکنون-- 88 00:02:58,340 --> 00:02:59,856 >> ALAN استرادا: Let's- اجازه دهید با واقعی است. 89 00:02:59,856 --> 00:03:00,370 واقعی است. 90 00:03:00,370 --> 00:03:00,970 >> DAVID J. مالان: و مستغلات. 91 00:03:00,970 --> 00:03:01,470 باشه. 92 00:03:01,470 --> 00:03:03,700 اگر شما نیاز واقعی است. 93 00:03:03,700 --> 00:03:05,250 در حال حاضر، که راه این است مایک اسمیت؟ 94 00:03:05,250 --> 00:03:06,250 >> ALAN استرادا: این راه. 95 00:03:06,250 --> 00:03:07,333 >> DAVID J. مالان: کدام راه؟ 96 00:03:07,333 --> 00:03:08,240 ALAN استرادا: صبر کنید. 97 00:03:08,240 --> 00:03:08,790 حق M is--؟ 98 00:03:08,790 --> 00:03:09,110 ما آغاز شده with-- 99 00:03:09,110 --> 00:03:10,090 >> DAVID J. مالان: آره. 100 00:03:10,090 --> 00:03:10,650 آنها سمت چپ در حال. 101 00:03:10,650 --> 00:03:11,430 حق خود را. 102 00:03:11,430 --> 00:03:11,710 >> ALAN استرادا: آره. 103 00:03:11,710 --> 00:03:13,126 >> DAVID J. مالان: به طوری که مایک در اینجا. 104 00:03:13,126 --> 00:03:13,990 ALAN استرادا: چه؟ 105 00:03:13,990 --> 00:03:14,665 >> [خنده] 106 00:03:14,665 --> 00:03:17,365 107 00:03:17,365 --> 00:03:18,330 >> بد به عنوان مثال، بچه ها. 108 00:03:18,330 --> 00:03:18,830 متاسف. 109 00:03:18,830 --> 00:03:21,610 DAVID J. مالان: این تدریس خواهد شد شما به جهش از صندلی خود را. 110 00:03:21,610 --> 00:03:22,318 >> ALAN استرادا: اوه. 111 00:03:22,318 --> 00:03:22,890 آه. 112 00:03:22,890 --> 00:03:23,390 من به شما کردم. 113 00:03:23,390 --> 00:03:24,670 من به شما کردم. 114 00:03:24,670 --> 00:03:25,170 آه. 115 00:03:25,170 --> 00:03:25,669 آه. 116 00:03:25,669 --> 00:03:26,812 این is-- خوب، من به شما کردم. 117 00:03:26,812 --> 00:03:27,520 اسمیت حق در اینجا؟ 118 00:03:27,520 --> 00:03:28,894 >> DAVID J. مالان: اسمیت، از شما سپاسگزارم. 119 00:03:28,894 --> 00:03:30,535 بنابراین من به دنبال حفظ تا اسمیت؟ 120 00:03:30,535 --> 00:03:30,790 >> ALAN استرادا: اوه، آره. 121 00:03:30,790 --> 00:03:31,340 نه نه نه. 122 00:03:31,340 --> 00:03:31,600 وای نه. 123 00:03:31,600 --> 00:03:31,940 این مال منه. 124 00:03:31,940 --> 00:03:32,580 >> DAVID J. مالان: اوه، شما اسمیت است. 125 00:03:32,580 --> 00:03:33,415 باشه. 126 00:03:33,415 --> 00:03:34,040 >> ALAN استرادا: آره، من اسمیت کردم در اینجا ببینید. 127 00:03:34,040 --> 00:03:34,700 بچه ها متاسفم. 128 00:03:34,700 --> 00:03:35,860 من فکر کردم Michael-- ما برای مایکل به دنبال شدند. 129 00:03:35,860 --> 00:03:36,550 متاسف. 130 00:03:36,550 --> 00:03:37,550 >> DAVID J. مالان: این خوب است. 131 00:03:37,550 --> 00:03:39,950 همه حق است، در حال حاضر ما به Paccini و پسران. 132 00:03:39,950 --> 00:03:41,242 >> ALAN استرادا: Paccini و پسران. 133 00:03:41,242 --> 00:03:43,158 DAVID J. مالان: فقط شما و من در این. 134 00:03:43,158 --> 00:03:44,050 باشه. 135 00:03:44,050 --> 00:03:45,130 یافتن ما مایک اسمیت. 136 00:03:45,130 --> 00:03:45,830 اسمیت. 137 00:03:45,830 --> 00:03:46,310 >> ALAN استرادا: اسمیت. 138 00:03:46,310 --> 00:03:46,750 >> DAVID J. مالان: اسمیت. 139 00:03:46,750 --> 00:03:47,728 ما در R زباله است. 140 00:03:47,728 --> 00:03:48,644 ALAN استرادا: زباله. 141 00:03:48,644 --> 00:03:50,096 آه. 142 00:03:50,096 --> 00:03:52,480 این است که به را در حالی که. 143 00:03:52,480 --> 00:03:54,340 >> [خنده] 144 00:03:54,340 --> 00:03:55,804 145 00:03:55,804 --> 00:03:56,720 DAVID J. مالان: کفش. 146 00:03:56,720 --> 00:03:58,080 ما در کفش است. 147 00:03:58,080 --> 00:04:00,210 >> ALAN استرادا: در حال حاضر ما در حال gonna-- 148 00:04:00,210 --> 00:04:01,105 >> DAVID J. مالان: خوب. 149 00:04:01,105 --> 00:04:01,980 ALAN استرادا: Which-- 150 00:04:01,980 --> 00:04:03,620 [خنده] 151 00:04:03,620 --> 00:04:05,440 آه، این بزرگ است. 152 00:04:05,440 --> 00:04:06,910 [خنده] 153 00:04:06,910 --> 00:04:08,380 154 00:04:08,380 --> 00:04:09,390 >> DAVID J. مالان: این خوب است. 155 00:04:09,390 --> 00:04:11,365 >> ALAN استرادا: آه، این خوب است. 156 00:04:11,365 --> 00:04:14,425 من فکر نمی کنم من قصد دارم به دوستان PSAT دارند بعد از این. 157 00:04:14,425 --> 00:04:15,300 DAVID J. مالان: خوب. 158 00:04:15,300 --> 00:04:16,078 ورزشی. 159 00:04:16,078 --> 00:04:17,036 ALAN استرادا: ورزشی. 160 00:04:17,036 --> 00:04:18,668 ام، L، M، N، O، P. 161 00:04:18,668 --> 00:04:19,459 DAVID J. مالان: OK. 162 00:04:19,459 --> 00:04:21,600 بنابراین اجازه دهید این پاره در نیم. 163 00:04:21,600 --> 00:04:22,270 مشکلی نیست. 164 00:04:22,270 --> 00:04:25,606 این به پایان می رسد ضعیف هر حال، چون مایک اسمیت را نمی خواهد در صفحات زرد باشد. 165 00:04:25,606 --> 00:04:26,430 >> ALAN استرادا: AW. 166 00:04:26,430 --> 00:04:27,140 >> DAVID J. مالان: نه، آن را OK. 167 00:04:27,140 --> 00:04:28,930 اما اجازه دهید مانند وانمود او در این صفحه است. 168 00:04:28,930 --> 00:04:33,260 بنابراین در حال حاضر، شما مشکل محدودتر به پایین به یک صفحه، و ما مایک اسمیت. 169 00:04:33,260 --> 00:04:35,180 >> [تشویق] 170 00:04:35,180 --> 00:04:35,757 171 00:04:35,757 --> 00:04:36,340 OK، از شما سپاسگزارم. 172 00:04:36,340 --> 00:04:40,700 173 00:04:40,700 --> 00:04:41,200 باشه. 174 00:04:41,200 --> 00:04:43,646 که فوق العاده بود. 175 00:04:43,646 --> 00:04:45,954 اما هنوز هم سریعتر بود از جستجوی خطی، 176 00:04:45,954 --> 00:04:47,870 در جایی که ما در آغاز ابتدای کتاب، 177 00:04:47,870 --> 00:04:51,210 و ما حرکت راه ما را از چپ به راست، در نهایت برای مایک اسمیت به دنبال. 178 00:04:51,210 --> 00:04:53,540 و بنابراین، اگر دفترچه تلفن حال شاید از 1،000 صفحه، 179 00:04:53,540 --> 00:04:56,300 شاید آن را گرفته اند ما 10 یا اشک صفحه. 180 00:04:56,300 --> 00:04:59,380 >> اما ممکن است شما قوی تر یک فرض را لمس کرد 181 00:04:59,380 --> 00:05:03,602 در طول همه از آن، است که می گویند که این کتاب تلفن در چه بود؟ 182 00:05:03,602 --> 00:05:04,310 مخاطبان: مرتب شده اند. 183 00:05:04,310 --> 00:05:05,000 DAVID J. مالان: این طبقه بندی شده اند. 184 00:05:05,000 --> 00:05:05,160 درست؟ 185 00:05:05,160 --> 00:05:07,909 آن را بر اساس حروف الفبا، به طوری که که همه کسانی که نام و شماره 186 00:05:07,909 --> 00:05:11,230 از این است: یک به طبقه بندی شده اند Z، و بر اساس حروف الفبا در میان است. 187 00:05:11,230 --> 00:05:13,100 اما امروز، ما در حال حاضر بپرسید سوال، خوب، 188 00:05:13,100 --> 00:05:16,170 چگونه انجام ورایزون یا تلفن شرکت آن را به که دولت؟ 189 00:05:16,170 --> 00:05:19,560 >> از آنجا که آن یک چیز را به اهرم این فرض، و بنابراین، 190 00:05:19,560 --> 00:05:22,570 حل یک مشکل با الگوریتم موثر تر است. 191 00:05:22,570 --> 00:05:24,900 اما ما واقعا هرگز پرسیده شده در هفته صفر، خوب، 192 00:05:24,900 --> 00:05:27,790 چقدر آن را هزینه ورایزون یا شخص دیگری 193 00:05:27,790 --> 00:05:29,620 که برای دریافت دفترچه تلفن در حالت مرتب شده؟ 194 00:05:29,620 --> 00:05:29,780 >> درست؟ 195 00:05:29,780 --> 00:05:31,529 آن مهم نیست اگر به دنبال مایک اسمیت 196 00:05:31,529 --> 00:05:35,190 فوق العاده سریع، اگر آن را به شما طول می کشد سال مرتب سازی بر اساس صفحات در ابتدا. 197 00:05:35,190 --> 00:05:35,690 درست؟ 198 00:05:35,690 --> 00:05:38,620 شما نیز ممکن است فقط غربال کردن از طریق یک دفترچه تلفن به صورت تصادفی، 199 00:05:38,620 --> 00:05:40,690 اگر آن را به فوق العاده گران به آن را مرتب. 200 00:05:40,690 --> 00:05:42,350 بنابراین اگر ما می توانید داوطلب دیگری داشته باشد. 201 00:05:42,350 --> 00:05:46,350 اجازه دهید یک نگاه کردن در اینجا در چگونه ما might-- در up-- آمده 202 00:05:46,350 --> 00:05:48,100 ما ممکن است در مورد مرتب سازی این است. 203 00:05:48,100 --> 00:05:51,990 >> و اگر اردن در واقع می تواند به ما بپیوندید تا در اینجا در مرحله. 204 00:05:51,990 --> 00:05:55,100 بیا تا برای فقط یک لحظه. 205 00:05:55,100 --> 00:05:56,359 نام شما چیست؟ 206 00:05:56,359 --> 00:05:57,150 CAROLINE: کارولین. 207 00:05:57,150 --> 00:05:58,691 DAVID J. مالان: کارولین، در آمده است. 208 00:05:58,691 --> 00:06:02,070 و به شما امکان پیوست توسط من و اردن در اینجا. 209 00:06:02,070 --> 00:06:03,800 کارولین، از شما سپاسگزارم. 210 00:06:03,800 --> 00:06:04,300 خیلی خوب. 211 00:06:04,300 --> 00:06:08,330 بنابراین آنچه که ما در اینجا برای کارولین 26 کتاب آبی است 212 00:06:08,330 --> 00:06:10,747 که با استفاده از FAS به اداره برخی از امتحانات نهایی. 213 00:06:10,747 --> 00:06:13,330 این سخت شدن برای پیدا کردن، اما آنچه که ما در پیش انجام داده ام 214 00:06:13,330 --> 00:06:15,800 این است که ما نام کسی قرار داده ام در مقابل هر یک از این، 215 00:06:15,800 --> 00:06:18,133 اما ما آن را ساده نگه داشته ام پس از آن قرار دادن نام کامل. 216 00:06:18,133 --> 00:06:22,720 بنابراین ما می فرد با نام قرار L، D، J، B، تمام راه را از طریق Z، 217 00:06:22,720 --> 00:06:24,090 اما آنها به صورت تصادفی است. 218 00:06:24,090 --> 00:06:26,890 و بنابراین اگر شما می توانید، صحبت کردن خود را راه را از طریق این مشکل به عنوان شما 219 00:06:26,890 --> 00:06:31,620 آن، می تواند به شما جلو بروید و مرتب سازی بر اساس این برای ما، از الف تا ی 220 00:06:31,620 --> 00:06:34,070 >> مخاطبان: خوب، پس L مانند وسط است. 221 00:06:34,070 --> 00:06:35,050 C شروع شده است. 222 00:06:35,050 --> 00:06:42,410 B. J قبل L. B، Q. 223 00:06:42,410 --> 00:06:45,140 >> DAVID J. مالان: نگه دارید که برای یک ثانیه فکر می کردم. 224 00:06:45,140 --> 00:06:48,910 از آنجا که در غیر این صورت، این تنها جالب را به شما، من، و اردن. 225 00:06:48,910 --> 00:06:49,724 ما میرویم آنجا. 226 00:06:49,724 --> 00:06:50,640 مخاطبان: [نامفهوم]. 227 00:06:50,640 --> 00:06:57,299 R. 228 00:06:57,299 --> 00:06:58,090 DAVID J. مالان: OK. 229 00:06:58,090 --> 00:06:59,310 چه کار می کنی؟ 230 00:06:59,310 --> 00:07:01,730 >> CAROLINE: M می آید پس از O. 231 00:07:01,730 --> 00:07:02,564 >> DAVID J. مالان: OK. 232 00:07:02,564 --> 00:07:03,064 >> CAROLINE: O. 233 00:07:03,064 --> 00:07:04,120 DAVID J. مالان: O، خوب است. 234 00:07:04,120 --> 00:07:04,970 >> CAROLINE: E. 235 00:07:04,970 --> 00:07:06,730 >> DAVID J. مالان: E، F. آره. 236 00:07:06,730 --> 00:07:07,620 >> CAROLINE: T، U، V. 237 00:07:07,620 --> 00:07:10,689 >> DAVID J. مالان: V، T، U، V. پس از آن به نظر میرسد شما making-- رفتن است. 238 00:07:10,689 --> 00:07:12,730 به نظر می رسد شما در حال ساخت یک توده بزرگ در اینجا، 239 00:07:12,730 --> 00:07:13,910 و نوع یک توده بزرگ بیش از وجود دارد. 240 00:07:13,910 --> 00:07:16,230 بنابراین نیمه اول از حروف الفبا، نیمه دوم از حروف الفبا. 241 00:07:16,230 --> 00:07:16,460 باشه. 242 00:07:16,460 --> 00:07:16,960 خوب است. 243 00:07:16,960 --> 00:07:19,680 نوع تفکیک مسئله در دو. 244 00:07:19,680 --> 00:07:21,771 M، N، X. آره. 245 00:07:21,771 --> 00:07:22,270 CAROLINE: K. 246 00:07:22,270 --> 00:07:22,980 DAVID J. مالان: OK. 247 00:07:22,980 --> 00:07:25,070 K. بنابراین شما نوع انتخاب آنها را یکی پس از دیگری، 248 00:07:25,070 --> 00:07:27,620 قرار دادن آن یا چپ یا راست، و یا Z رفتن بر روی زمین. 249 00:07:27,620 --> 00:07:28,012 باشه. 250 00:07:28,012 --> 00:07:29,190 >> CAROLINE: Z رفتن بر روی زمین. 251 00:07:29,190 --> 00:07:29,360 >> DAVID J. مالان: OK. 252 00:07:29,360 --> 00:07:30,920 Y است که بر روی زمین. 253 00:07:30,920 --> 00:07:31,735 حالا ما می توانیم X. قرار 254 00:07:31,735 --> 00:07:32,409 >> CAROLINE: G. 255 00:07:32,409 --> 00:07:33,700 DAVID J. مالان: در G رفتن به سمت چپ. 256 00:07:33,700 --> 00:07:36,017 S است که راست. 257 00:07:36,017 --> 00:07:37,642 همه راست، در حال رفتن تمام راه را به سمت چپ. 258 00:07:37,642 --> 00:07:38,790 >> CAROLINE: A، B، C، D، 259 00:07:38,790 --> 00:07:39,873 >> DAVID J. مالان: در حال حاضر، خوب است. 260 00:07:39,873 --> 00:07:43,260 ما باید A، B، C. W رفتن به پایین وجود دارد. 261 00:07:43,260 --> 00:07:45,566 همه حق است، T. 262 00:07:45,566 --> 00:07:46,611 >> CAROLINE: H، I، J. 263 00:07:46,611 --> 00:07:47,860 DAVID J. مالان: H، I، J. خوب. 264 00:07:47,860 --> 00:07:49,160 CAROLINE: در مرکز، من gonna-- 265 00:07:49,160 --> 00:07:50,000 DAVID J. مالان: OK. 266 00:07:50,000 --> 00:07:52,375 بنابراین در حال حاضر، ما قصد داریم به نوع از ادغام این شمع های مختلف. 267 00:07:52,375 --> 00:08:00,730 بنابراین A تا C، پس از آن من D، و E، F و، و G و H و I خوب. 268 00:08:00,730 --> 00:08:05,540 J، K. و پس از آن، این شمع وارونه، اما این OK. 269 00:08:05,540 --> 00:08:06,040 به روی چشم. 270 00:08:06,040 --> 00:08:07,240 ما می توانیم برخی از گوشه را کاهش دهد. 271 00:08:07,240 --> 00:08:07,950 باشه. 272 00:08:07,950 --> 00:08:10,530 و سپس ما باید W، X، Y، Z. 273 00:08:10,530 --> 00:08:11,250 >> CAROLINE: آره. 274 00:08:11,250 --> 00:08:11,880 >> DAVID J. مالان: بسیار عالی است. 275 00:08:11,880 --> 00:08:14,122 بنابراین یک تشکر به کارولین برای مرتب سازی این. 276 00:08:14,122 --> 00:08:15,030 >> [تشویق] 277 00:08:15,030 --> 00:08:17,287 >> متشکرم. 278 00:08:17,287 --> 00:08:18,120 خیلی ممنون. 279 00:08:18,120 --> 00:08:22,910 بنابراین در حال حاضر برای لحظه ای در نظر چگونه کارولین در مورد انجام داد رفت، 280 00:08:22,910 --> 00:08:26,040 و آنچه که دقیقا ما قادر to-- چگونه بود ما 281 00:08:26,040 --> 00:08:28,409 قادر به حل بود که مشکل زمانی که ما فقط 282 00:08:28,409 --> 00:08:29,950 با توجه به یک دسته کامل از ورودی تصادفی. 283 00:08:29,950 --> 00:08:31,610 >> خوب، آن را به نظر می رسد مانند یک بیت از یک سیستم وجود دارد؟ 284 00:08:31,610 --> 00:08:32,110 درست. 285 00:08:32,110 --> 00:08:34,495 بنابراین حروف زودتر در الفبای، او 286 00:08:34,495 --> 00:08:37,120 قرار دادن به سمت چپ، و نامه بعد از آن در الفبا، 287 00:08:37,120 --> 00:08:38,270 او قرار دادن به سمت راست بود. 288 00:08:38,270 --> 00:08:40,500 و به زودی به عنوان او در بر داشت برخی از نامه های پروگزیمال، آنهایی که 289 00:08:40,500 --> 00:08:43,124 که به حق در کنار یکدیگر، او کسانی که در دستور قرار داده است. 290 00:08:43,124 --> 00:08:46,750 و بنابراین ما از حال این کوچک انبوهی از ورودی مرتب شده اتفاق می افتد. 291 00:08:46,750 --> 00:08:50,540 >> و به طوری که کاملا شبیه به آنچه بسیاری از ما انسان را انجام دهد. 292 00:08:50,540 --> 00:08:53,530 ما از طریق آن غربال کردن، و ما به نوعی می خواهم یک مکانیسم است. 293 00:08:53,530 --> 00:08:56,930 اما ممکن است سخت به ارسال آن را در یک فرمول در هر سه است. 294 00:08:56,930 --> 00:08:59,010 این احساس کمی بیشتر آلی از آن است. 295 00:08:59,010 --> 00:09:02,560 بنابراین اجازه دهید ببینیم که اگر ما هم اکنون می توانید محدود مشکل با ورودی های کمتر. 296 00:09:02,560 --> 00:09:05,170 >> به جای 26، اجازه دهید انجام کاری به مراتب کمتر 297 00:09:05,170 --> 00:09:09,890 با فقط می گویند، هفت، پشت این درب، پس به صحبت می کنند. 298 00:09:09,890 --> 00:09:11,300 فقط هفت عدد وجود دارد؟ 299 00:09:11,300 --> 00:09:15,240 و اگر هم هدف در حال حاضر در دست است برای پیدا کردن یک ارزش، 300 00:09:15,240 --> 00:09:17,850 بیایید ببینید که چگونه موثر ما می توانیم در مورد انجام این. 301 00:09:17,850 --> 00:09:22,460 و اجازه دهید اگر ما اکنون می توانید ببینید شروع به اعمال برخی از اعداد، 302 00:09:22,460 --> 00:09:26,310 و یا برخی از فرمول های که با آن به توصیف بهره وری از دفترچه تلفن ما 303 00:09:26,310 --> 00:09:31,060 الگوریتم، الگوریتم کتاب آزمون ما، و به طور کلی، پیدا کردن اطلاعات. 304 00:09:31,060 --> 00:09:34,770 >> بنابراین برای این، اجازه دهید من پیش بروید، و بر روی صفحه لمسی در اینجا، 305 00:09:34,770 --> 00:09:41,100 قرار داده تا یک مرورگر وب است که دقیقا این هفت درب. 306 00:09:41,100 --> 00:09:46,670 و اگر ما می تواند یک دیگر داوطلب در بیا اینجا، 307 00:09:46,670 --> 00:09:48,480 من این درب همان در اینجا قرار داده است. 308 00:09:48,480 --> 00:09:49,170 داوطلب سریع. 309 00:09:49,170 --> 00:09:51,130 >> این دموی one-- می رویم به یک سریعتر و سریعتر است. 310 00:09:51,130 --> 00:09:51,600 بیا پایین. 311 00:09:51,600 --> 00:09:52,308 نام شما چیست؟ 312 00:09:52,308 --> 00:09:53,040 ترور: ترور. 313 00:09:53,040 --> 00:09:53,998 >> DAVID J. مالان: ترور؟ 314 00:09:53,998 --> 00:09:55,770 همه حق است، ترور، در آمد. 315 00:09:55,770 --> 00:09:59,212 بنابراین ترور در اینجا به داوطلب شده است انجام یک مشکل مشابه، اما یکی که 316 00:09:59,212 --> 00:10:02,170 باریک در دامنه، و که رفتن به ما اجازه می دهد به تلاش برای رسمی در حال حاضر 317 00:10:02,170 --> 00:10:03,970 این فرایند را برای مرتب سازی این اعداد. 318 00:10:03,970 --> 00:10:05,500 >> بنابراین ترور، از ملاقات شما خوشبختم. 319 00:10:05,500 --> 00:10:08,720 بنابراین در اینجا یک آرایه است، پس به صحبت می کنند، یک لیست از هفت درب. 320 00:10:08,720 --> 00:10:10,327 برو جلو و پیدا کردن ما تعداد 50. 321 00:10:10,327 --> 00:10:12,410 و سپس پس از این واقعیت، به ما بگویید چگونه شما آن را در بر داشت. 322 00:10:12,410 --> 00:10:19,124 323 00:10:19,124 --> 00:10:20,040 باید تمام حق be--. 324 00:10:20,040 --> 00:10:21,945 آره، این یکی در اینجا این است؟ 325 00:10:21,945 --> 00:10:24,680 آه اوه. 326 00:10:24,680 --> 00:10:25,560 باشه. 327 00:10:25,560 --> 00:10:26,680 شما که یک کلیک. 328 00:10:26,680 --> 00:10:28,690 خوب است. 329 00:10:28,690 --> 00:10:29,780 >> و خوب است. 330 00:10:29,780 --> 00:10:30,970 در حال حاضر شما که کلیک شده است. 331 00:10:30,970 --> 00:10:34,060 و اجازه دهید به شما میکروفون را، به طوری که شما آن را در یک لحظه. 332 00:10:34,060 --> 00:10:37,000 برو جلو و با کلیک بر روی درب بعدی است که شما قصد. 333 00:10:37,000 --> 00:10:39,812 بله خوب. 334 00:10:39,812 --> 00:10:41,020 TREVOR: آیا من می توانم یک درب unclick؟ 335 00:10:41,020 --> 00:10:42,620 DAVID J. مالان: نه، شما نمی توانید unclick. 336 00:10:42,620 --> 00:10:43,119 TREVOR: OK. 337 00:10:43,119 --> 00:10:43,974 این یکی. 338 00:10:43,974 --> 00:10:45,640 DAVID J. مالان: از کجا می خواهید بروید؟ 339 00:10:45,640 --> 00:10:46,410 کدام یکی؟ 340 00:10:46,410 --> 00:10:47,230 >> TREVOR: این یکی. 341 00:10:47,230 --> 00:10:48,042 >> DAVID J. مالان: شماره 342 00:10:48,042 --> 00:10:48,450 >> TREVOR: OK. 343 00:10:48,450 --> 00:10:48,735 این یکی. 344 00:10:48,735 --> 00:10:49,020 >> DAVID J. مالان: بله. 345 00:10:49,020 --> 00:10:49,700 خوب بود. 346 00:10:49,700 --> 00:10:50,380 خیلی خوب. 347 00:10:50,380 --> 00:10:53,900 پس چه الگوریتم خود را یا روش برای انجام این کار، ترور؟ 348 00:10:53,900 --> 00:10:56,149 >> TREVOR: من فقط از طریق رفت درب تا زمانی که من پیدا شده است 50. 349 00:10:56,149 --> 00:10:56,940 DAVID J. مالان: OK. 350 00:10:56,940 --> 00:10:58,150 الگوریتم بسیار عالی است. 351 00:10:58,150 --> 00:10:59,540 به طوری که خوب است. 352 00:10:59,540 --> 00:11:03,120 از آنجا که در واقع، اگر من نشان می دهد چه در پشت این دو درب دیگر، آنچه 353 00:11:03,120 --> 00:11:06,954 ما در اینجا پیدا کنید این است که ما تنها ورودی تصادفی داشته باشد. 354 00:11:06,954 --> 00:11:08,870 به طوری که در واقع به عنوان شد خوب به عنوان شما می توانید دریافت کنید. 355 00:11:08,870 --> 00:11:12,509 و در واقع، شما بهتر از من جامع جستجو در کل آرایه، 356 00:11:12,509 --> 00:11:15,300 به دلیل آن که واقعا شده بدشانسی اگر شما تعداد برخورد کرده بود 357 00:11:15,300 --> 00:11:16,604 50 در آخرین درب. 358 00:11:16,604 --> 00:11:18,520 اما اگر ما به جای یک فرض به شما. 359 00:11:18,520 --> 00:11:20,630 فرض کنید من مرتب سازی بر همه این درب در اطراف، 360 00:11:20,630 --> 00:11:23,500 به طوری که شما باید شماره طبقه بندی شده اند این زمان، 361 00:11:23,500 --> 00:11:29,730 اما این بار آن را در واقع different-- این زمان، 362 00:11:29,730 --> 00:11:32,640 آن را در واقع برای شما طبقه بندی شده اند. 363 00:11:32,640 --> 00:11:35,380 و در حال حاضر هدف در دست این است که ضربه شماره 50. 364 00:11:35,380 --> 00:11:36,090 >> TREVOR: OK. 365 00:11:36,090 --> 00:11:37,670 >> DAVID J. مالان: چه خبر الگوریتم خود را برای رفتن به؟ 366 00:11:37,670 --> 00:11:39,628 >> TREVOR: خوب، اگر آن را طبقه بندی شده اند، آن را یا رفتن 367 00:11:39,628 --> 00:11:42,710 به be-- اگر به بزرگترین بزرگترین، نزولی، آن را یکی از اولین، 368 00:11:42,710 --> 00:11:44,751 و یا اگر آن مخالف است، آن خواهد بود که یکی از آخرین. 369 00:11:44,751 --> 00:11:48,897 بنابراین من فقط شیر این درب، و پس از آن فقط شیر آخرین درب. 370 00:11:48,897 --> 00:11:49,980 DAVID J. مالان: بسیار عالی است. 371 00:11:49,980 --> 00:11:50,270 خیلی خوب. 372 00:11:50,270 --> 00:11:51,150 بنابراین ما تعداد 50 پیدا شده است. 373 00:11:51,150 --> 00:11:52,970 تا در اسرع وقت شما را می دانستند آنها طبقه بندی شده اند شد، ما 374 00:11:52,970 --> 00:11:55,040 قادر به اهرم این فرض بود. 375 00:11:55,040 --> 00:11:57,040 به طوری که آنها بیش از حد مانند هستید به عنوان مثال دفترچه تلفن. 376 00:11:57,040 --> 00:11:59,540 به محض این که شما، حتی با یک مشکل کوچک مانند این، 377 00:11:59,540 --> 00:12:02,380 ورودی خود را قبل از طبقه بندی شده اند، ما می توانیم در واقع ارزش پیدا مسلما 378 00:12:02,380 --> 00:12:03,130 موثر تر است. 379 00:12:03,130 --> 00:12:05,800 >> و من شما را اگر آن را نمی طبقه بندی شده اند کوچک به بزرگ، یا بزرگ به کوچک، 380 00:12:05,800 --> 00:12:08,080 و پس از آن بسیار مناسب بود برای شروع در انتهای آن یا دیگر 381 00:12:08,080 --> 00:12:09,750 به واقع که ارزش هدف پیدا کنید. 382 00:12:09,750 --> 00:12:11,400 بنابراین برای ترور تشکر شده است. 383 00:12:11,400 --> 00:12:13,260 و من propose-- سادگی انجام می شود. 384 00:12:13,260 --> 00:12:16,960 ما یک کلیپ کوچک، در واقع، که است که در میان لحظات مورد علاقه ما در CS50، 385 00:12:16,960 --> 00:12:19,700 به موجب آن گاهی اوقات این دموی کاملا نمی با توجه به طرح. 386 00:12:19,700 --> 00:12:22,050 و در واقع در حال حاضر، من کشیده تا رابط اشتباه 387 00:12:22,050 --> 00:12:23,508 که با آن به استفاده از صفحه لمسی. 388 00:12:23,508 --> 00:12:24,660 به طوری که تقصیر من بود. 389 00:12:24,660 --> 00:12:26,600 >> بنابراین این برای ایجاد کلیپ سال آینده به عنوان 390 00:12:26,600 --> 00:12:28,570 به همین دلیل من کلیک شد بر روی صفحه نمایش خود من است. 391 00:12:28,570 --> 00:12:31,390 اما اجازه دهید نگاهی سریع در سال گذشته چه اتفاقی افتاده 392 00:12:31,390 --> 00:12:34,770 با جی که آمد، بسیار مانند ترور در اینجا، داوطلب، 393 00:12:34,770 --> 00:12:39,380 و در این کلیپ کوتاه، شما خواهید دید این همان نسخه ی نمایشی کاملا نمی 394 00:12:39,380 --> 00:12:41,074 نشان می دهد درس همان دست. 395 00:12:41,074 --> 00:12:41,740 [پخش ویدئو] 396 00:12:41,740 --> 00:12:45,360 همه من می خواهم شما انجام دهید این است برای من پیدا کنید، و برای ما، 397 00:12:45,360 --> 00:12:51,674 واقعا، تعداد 50 هر بار یک قدم. 398 00:12:51,674 --> 00:12:52,450 >> -روز تعداد 50؟ 399 00:12:52,450 --> 00:12:53,190 >> -روز تعداد 50. 400 00:12:53,190 --> 00:12:55,356 و شما می توانید نشان می دهد چه پشت هر یک از این درها 401 00:12:55,356 --> 00:12:58,540 به سادگی با لمس آن را با یک انگشت. 402 00:12:58,540 --> 00:13:00,910 لعنتی. 403 00:13:00,910 --> 00:13:02,870 >> [خنده] 404 00:13:02,870 --> 00:13:03,806 >> [END پخش] 405 00:13:03,806 --> 00:13:05,430 DAVID J. مالان: به طوری که بسیار خوب پیش رفت. 406 00:13:05,430 --> 00:13:06,796 کسانی که درب نامرتب بود. 407 00:13:06,796 --> 00:13:08,670 و جی، البته، آن همه خیلی زود است. 408 00:13:08,670 --> 00:13:12,910 ترور یک کار خیلی بهتر بود از نظر یک لحظه قابل تعلیم، 409 00:13:12,910 --> 00:13:15,850 پس به صحبت، در این سال در گرفتن دیگر را پیدا کنید. 410 00:13:15,850 --> 00:13:17,950 البته، پس از آن ما به شانس دوم جی، 411 00:13:17,950 --> 00:13:20,320 به موجب آن ما طبقه بندی شده اند درها، همانطور که ما برای ترور انجام داد، 412 00:13:20,320 --> 00:13:22,300 و ترور بود فوق العاده خوبی در این زمان. 413 00:13:22,300 --> 00:13:26,124 اما جی آن را به عنوان نیمی از سرعت انجام داد. 414 00:13:26,124 --> 00:13:26,790 [پخش ویدئو] 415 00:13:26,790 --> 00:13:29,650 که هدف در حال حاضر به هم پیدا کردن ما تعداد 50، 416 00:13:29,650 --> 00:13:33,030 اما آن را به صورت الگوریتمی، و به ما بگویید چگونه شما در حال رفتن در مورد آن. 417 00:13:33,030 --> 00:13:33,660 >> -باشه. 418 00:13:33,660 --> 00:13:35,604 >> البته اگر شما آن را پیدا کنید، شما این فیلم را نگه دارید. 419 00:13:35,604 --> 00:13:37,228 اگر شما آن را پیدا کند، شما آن را به عقب. 420 00:13:37,228 --> 00:13:38,044 >> -انسان. 421 00:13:38,044 --> 00:13:38,860 >> اوه! 422 00:13:38,860 --> 00:13:40,800 >> - [نامفهوم] OK. 423 00:13:40,800 --> 00:13:46,236 بنابراین من قصد دارم به بررسی به پایان می رسد برای اولین بار برای تعیین اینکه آیا there's-- اوه. 424 00:13:46,236 --> 00:13:48,646 >> [تشویق حضار] 425 00:13:48,646 --> 00:13:53,948 426 00:13:53,948 --> 00:13:55,729 >> [END پخش] 427 00:13:55,729 --> 00:13:56,520 DAVID J. مالان: OK. 428 00:13:56,520 --> 00:13:59,760 بنابراین مرتب سازی درب به وضوح منجر به بهره وری بیشتر. 429 00:13:59,760 --> 00:14:01,680 و بنابراین، دو برابر سریع چیزی است که من به معنای وجود دارد. 430 00:14:01,680 --> 00:14:03,270 و به این ترتیب جی رو خوش شانس در هر دو بار. 431 00:14:03,270 --> 00:14:06,685 و او نیز شانس در آخرین سال، من دستور داد برخی از دیسک های بلو ری 432 00:14:06,685 --> 00:14:07,560 به واقع را از. 433 00:14:07,560 --> 00:14:09,768 متاسفم این سال، ما انجام همان نیست، ترور. 434 00:14:09,768 --> 00:14:11,540 اما هنوز بهتر چند سال به عقب بود. 435 00:14:11,540 --> 00:14:14,820 و برخی از شما ممکن است این مطمئن شوید همکار، شان، که هنگامی که در CS50 بود، 436 00:14:14,820 --> 00:14:17,780 با دقیق به چالش کشیده شد مشکل، البته در SD، 437 00:14:17,780 --> 00:14:19,360 به عنوان شما به زودی خواهید، در روز را مشاهده کنید. 438 00:14:19,360 --> 00:14:22,622 و شما پیدا کنید که نه تنها او را کمی طولانی تر از جی، 439 00:14:22,622 --> 00:14:25,580 کمی طولانی تر از ترور، آن بود در واقع این فرصت فوق العاده 440 00:14:25,580 --> 00:14:29,820 به تعامل تقریبا همه در جمعیت لا قیمت حق است، تشویق 441 00:14:29,820 --> 00:14:31,889 او برای پیدا کردن شماره ما به دنبال. 442 00:14:31,889 --> 00:14:32,930 بیایید. نگاهی سریع. 443 00:14:32,930 --> 00:14:33,320 >> [پخش ویدئو] 444 00:14:33,320 --> 00:14:33,820 >> -باشه. 445 00:14:33,820 --> 00:14:36,680 بنابراین وظیفه شما در اینجا، شان، به شرح زیر است. 446 00:14:36,680 --> 00:14:40,860 من در پشت این پنهان درب عدد هفت. 447 00:14:40,860 --> 00:14:45,120 اما به دور در برخی از این درب جمع و نیز سایر اعداد منفی هستند. 448 00:14:45,120 --> 00:14:47,500 و هدف شما این است که فکر می کنم این ردیف بالا از اعداد 449 00:14:47,500 --> 00:14:50,390 به عنوان فقط یک آرایه، و یا فقط دنباله ای از تکه های کاغذ 450 00:14:50,390 --> 00:14:51,510 با شماره پشت سر آنها. 451 00:14:51,510 --> 00:14:55,540 و هدف شما این است، تنها با استفاده از بالا آرایه در اینجا، من عدد هفت پیدا کنید. 452 00:14:55,540 --> 00:14:58,570 و ما در حال رفتن به نقد سپس چگونه شما در مورد انجام آن است. 453 00:14:58,570 --> 00:14:59,070 -خیلی خوب. 454 00:14:59,070 --> 00:15:00,850 یافتن پست های ما عدد هفت، لطفا. 455 00:15:00,850 --> 00:15:10,500 456 00:15:10,500 --> 00:15:11,000 شماره 457 00:15:11,000 --> 00:15:15,050 458 00:15:15,050 --> 00:15:18,550 پنج، 19، 13. 459 00:15:18,550 --> 00:15:22,240 460 00:15:22,240 --> 00:15:24,770 >> [خنده] 461 00:15:24,770 --> 00:15:25,910 >> این یک سوال ترفند نیست. 462 00:15:25,910 --> 00:15:29,410 463 00:15:29,410 --> 00:15:29,910 یکی. 464 00:15:29,910 --> 00:15:33,218 465 00:15:33,218 --> 00:15:34,695 >> [خنده] 466 00:15:34,695 --> 00:15:37,861 در این نقطه، نمره خود را بسیار نیست خوب، پس شما نیز ممکن است ادامه دهم. 467 00:15:37,861 --> 00:15:40,610 468 00:15:40,610 --> 00:15:41,110 سه. 469 00:15:41,110 --> 00:15:43,890 470 00:15:43,890 --> 00:15:45,378 >> [خنده] 471 00:15:45,378 --> 00:15:46,370 472 00:15:46,370 --> 00:15:47,774 >> ادامه دادن. 473 00:15:47,774 --> 00:15:50,690 صادقانه بگویم، من نمی تواند کمک کند اما تعجب می کنم آنچه را که شما حتی فکر کردن در مورد، so-- 474 00:15:50,690 --> 00:15:51,959 >> [خنده] 475 00:15:51,959 --> 00:15:53,229 476 00:15:53,229 --> 00:15:55,020 فقط ردیف بالا، به طوری که شما سه سمت چپ کردم. 477 00:15:55,020 --> 00:15:56,200 بنابراین من هفت پیدا کنید. 478 00:15:56,200 --> 00:15:59,700 479 00:15:59,700 --> 00:16:02,167 >> [خنده] 480 00:16:02,167 --> 00:16:14,870 481 00:16:14,870 --> 00:16:15,370 17. 482 00:16:15,370 --> 00:16:25,675 483 00:16:25,675 --> 00:16:26,946 هفت. 484 00:16:26,946 --> 00:16:28,780 >> [تشویق حضار] 485 00:16:28,780 --> 00:16:29,426 >> خیلی خوب. 486 00:16:29,426 --> 00:16:30,360 >> [END پخش] 487 00:16:30,360 --> 00:16:31,840 >> DAVID J. مالان: بنابراین ما می تواند تماشای این تمام طول روز. 488 00:16:31,840 --> 00:16:34,090 و البته، برخی از دموی این سال شاید 489 00:16:34,090 --> 00:16:36,330 در حال حاضر تا پایان در بعدی فیلم سال است. 490 00:16:36,330 --> 00:16:39,040 بنابراین در حال حاضر اجازه دهید در واقع تمرکز بر روی الگوریتم 491 00:16:39,040 --> 00:16:42,140 در اینجا، و ببینید که اگر ما می توانیم در حال حاضر شروع به رسمی 492 00:16:42,140 --> 00:16:46,650 چگونه ما می توانیم در مورد گرفتن داده های ما به را به این دولت است که آن را طبقه بندی شده اند، 493 00:16:46,650 --> 00:16:50,054 به طوری که در نهایت، ما در واقع می توانید جستجو آن را موثر تر است. 494 00:16:50,054 --> 00:16:52,470 و حتی اگر ما قصد داریم به استفاده از مجموعه داده های نسبتا کوچک، 495 00:16:52,470 --> 00:16:54,511 مانند هشت شماره ما در اینجا در هیئت مدیره، 496 00:16:54,511 --> 00:16:58,230 در نهایت این ایده ها می تواند اعمال شود همان 1،000 ورودی، یک میلیون ورودی، 497 00:16:58,230 --> 00:17:02,100 4 میلیارد ورودی، به دلیل الگوریتم در حال رفتن به اساسا همان. 498 00:17:02,100 --> 00:17:05,359 >> و بنابراین این گذشته ما فرصت برای داوطلبان امروز، 499 00:17:05,359 --> 00:17:09,790 اما شاید یکی از درگیر، که ما نیاز به هشت داوطلب 500 00:17:09,790 --> 00:17:12,960 به آمد و ما را از طریق راه رفتن روند مرتب سازی آنچه که به زودی 501 00:17:12,960 --> 00:17:15,212 در این موسیقی می شود از غرفه در اینجا. 502 00:17:15,212 --> 00:17:16,170 به من اجازه شروع به اینجا. 503 00:17:16,170 --> 00:17:19,692 >> بنابراین یکی در سبز turquoise-- در آن است؟ 504 00:17:19,692 --> 00:17:21,130 آیا شما به ارتکاب؟ 505 00:17:21,130 --> 00:17:21,630 دو. 506 00:17:21,630 --> 00:17:23,069 بیا پایین. 507 00:17:23,069 --> 00:17:23,569 باشه. 508 00:17:23,569 --> 00:17:24,420 سه. 509 00:17:24,420 --> 00:17:25,400 چهار. 510 00:17:25,400 --> 00:17:27,247 اجازه دهید me-- OK، پنج. 511 00:17:27,247 --> 00:17:28,830 شما توسط دوست شما نامزد شده است. 512 00:17:28,830 --> 00:17:31,340 شش، هفت و هشت. 513 00:17:31,340 --> 00:17:32,130 بیا بالا. 514 00:17:32,130 --> 00:17:32,630 خیلی خوب. 515 00:17:32,630 --> 00:17:33,190 خیلی از شما ممنونم. 516 00:17:33,190 --> 00:17:33,689 بیا بالا. 517 00:17:33,689 --> 00:17:34,790 بیا بالا. 518 00:17:34,790 --> 00:17:35,330 >> خیلی خوب. 519 00:17:35,330 --> 00:17:38,890 بنابراین آنچه که ما here-- و این دارند است در میان آنهایی که بی دست و پا تر، 520 00:17:38,890 --> 00:17:42,390 از آنجایی که این خواهد شد که شما نیاز به طنز من برای فقط یک کمی از زمان. 521 00:17:42,390 --> 00:17:43,442 شما باید شماره یک باشد. 522 00:17:43,442 --> 00:17:44,150 نام شما چیست؟ 523 00:17:44,150 --> 00:17:44,610 >> عنان: عنان. 524 00:17:44,610 --> 00:17:45,526 >> DAVID J. مالان: عنان. 525 00:17:45,526 --> 00:17:46,092 دیوید. 526 00:17:46,092 --> 00:17:46,800 نام شما چیست؟ 527 00:17:46,800 --> 00:17:47,140 >> یوسف: یوسف. 528 00:17:47,140 --> 00:17:49,190 >> DAVID J. مالان: یوسف، شما شماره دو هستند. 529 00:17:49,190 --> 00:17:52,260 >> سرنا: سرنا، شماره ی سه. 530 00:17:52,260 --> 00:17:53,722 استفان، شماره چهار. 531 00:17:53,722 --> 00:17:54,430 CYNTHIA: سینتیا. 532 00:17:54,430 --> 00:17:57,548 DAVID J. مالان: سینتیا، شماره پنج. 533 00:17:57,548 --> 00:17:58,452 [نامفهوم] 534 00:17:58,452 --> 00:17:59,618 DAVID J. مالان: [نامفهوم]. 535 00:17:59,618 --> 00:18:00,391 دیوید، شماره شش. 536 00:18:00,391 --> 00:18:00,890 MATT: مت. 537 00:18:00,890 --> 00:18:02,160 DAVID J. مالان: تعداد مت هفت. 538 00:18:02,160 --> 00:18:02,850 و؟ 539 00:18:02,850 --> 00:18:03,210 >> WAVERLY: ویورلی. 540 00:18:03,210 --> 00:18:04,470 >> DAVID J. مالان: ویورلی، شماره هشت. 541 00:18:04,470 --> 00:18:04,970 خیلی خوب. 542 00:18:04,970 --> 00:18:06,510 اگر شما could-- اوه. 543 00:18:06,510 --> 00:18:08,820 اگر همه شما، به عنوان خود را اولین چالش، وجود دارد 544 00:18:08,820 --> 00:18:10,820 هشت غرفه موسیقی در اینجا رو به مخاطبان. 545 00:18:10,820 --> 00:18:14,200 اگر شما می توانید شماره خود را در قرار داده این موسیقی می ایستد در چنین راهی 546 00:18:14,200 --> 00:18:16,560 که آنها مطابق با همان تعداد در هیئت مدیره. 547 00:18:16,560 --> 00:18:19,560 بنابراین خودتان را که کنید و با ایجاد قرار دادن شماره های خود را در این موسیقی 548 00:18:19,560 --> 00:18:21,960 می ایستد در اینجا. 549 00:18:21,960 --> 00:18:25,980 عالی تا کنون. 550 00:18:25,980 --> 00:18:26,600 >> بسیار عالی است. 551 00:18:26,600 --> 00:18:26,890 باشه. 552 00:18:26,890 --> 00:18:29,556 بنابراین در حال حاضر، ما قصد داریم به درخواست سوال در چند راه مختلف. 553 00:18:29,556 --> 00:18:31,610 چگونه می توانیم در مورد مرتب سازی بروید این مردمی اینجا؟ 554 00:18:31,610 --> 00:18:34,500 از آنجا که ما چند روش به حال قبل از آن، به موجب آن ما بود 555 00:18:34,500 --> 00:18:36,360 نوع ساخت دو سطل های مختلف. 556 00:18:36,360 --> 00:18:38,842 پس از آن ما به طور کلی و شد چیدمان چیز با هم. 557 00:18:38,842 --> 00:18:41,050 به محض این که دو عدد را دیدم که با هم تعلق داشت، 558 00:18:41,050 --> 00:18:41,975 ما آنها را با هم. 559 00:18:41,975 --> 00:18:43,350 دو نامه که با هم تعلق دارند. 560 00:18:43,350 --> 00:18:45,058 >> اما اجازه دهید اگر ببینید که ما می توانید این رسمی نیست، 561 00:18:45,058 --> 00:18:48,044 به طوری که ما نهایت برخی شبه کد شما خواهد شد، 562 00:18:48,044 --> 00:18:49,710 با که شما می توانید این مشکلات را حل. 563 00:18:49,710 --> 00:18:51,870 بنابراین در حال حاضر، من به دنبال کردن در این شماره است. 564 00:18:51,870 --> 00:18:55,030 و من یک دسته کامل از اشتباهات را ببینید. 565 00:18:55,030 --> 00:18:57,750 در نهایت، من می خواهم یکی در چپ و هشت در سمت راست. 566 00:18:57,750 --> 00:19:00,650 >> و به این ترتیب من به دنبال در این دو، چهار و دو. 567 00:19:00,650 --> 00:19:02,930 و چه مشکل است، بدیهی است؟ 568 00:19:02,930 --> 00:19:04,261 آره. 569 00:19:04,261 --> 00:19:04,760 بنابراین. 570 00:19:04,760 --> 00:19:07,160 دو بدیهی است قبل از می آید چهار، بنابراین شما می دانید چه؟ 571 00:19:07,160 --> 00:19:10,210 اجازه بدهید اول یک رویکرد حریص را، اگر شما خواهد شد، بسیار شبیه به مشکل 572 00:19:10,210 --> 00:19:13,790 مجموعه one-- اگر شما از یاد نسخه استاندارد از مجموعه مسائل یکی، 573 00:19:13,790 --> 00:19:16,820 جایی که من فقط به صورت محلی مشکل را حل کند که در اینجا در مقابل من 574 00:19:16,820 --> 00:19:17,690 و ببینید که در آن را به من منجر می شود. 575 00:19:17,690 --> 00:19:17,870 >> باشه. 576 00:19:17,870 --> 00:19:20,161 بنابراین دو و چهار، به من اجازه رفتن پیش رو و فقط به شما مبادله دو. 577 00:19:20,161 --> 00:19:22,400 اگر شما از لحاظ جسمی می تواند حرکت کند خودتان و کاغذ خود، 578 00:19:22,400 --> 00:19:25,040 من به نظر می رسد بدست اند لیست در حالت بهتر است. 579 00:19:25,040 --> 00:19:26,330 >> در حال حاضر، آنها خوب است. 580 00:19:26,330 --> 00:19:28,480 من قصد دارم به حرکت در، چهار و شش، به نظر می رسد خوب است. 581 00:19:28,480 --> 00:19:29,110 مشکلی نیست. 582 00:19:29,110 --> 00:19:30,440 شش و هشت، OK. 583 00:19:30,440 --> 00:19:31,860 هشت و یک، یک مشکل دیگر. 584 00:19:31,860 --> 00:19:34,750 از آنجا که آنچه درست است حدود هشت و یک؟ 585 00:19:34,750 --> 00:19:36,990 یکی می آید قبل از ساعت هشت، و بنابراین، آنچه باید انجام دهیم؟ 586 00:19:36,990 --> 00:19:38,090 بیایید مبادله این دو. 587 00:19:38,090 --> 00:19:39,316 یکی و هشت. 588 00:19:39,316 --> 00:19:40,690 و در حال حاضر، من قصد دارم به رفتن ادامه دهید. 589 00:19:40,690 --> 00:19:42,030 من قصد دارم به حفظ نگاه به آینده. 590 00:19:42,030 --> 00:19:42,840 و اجازه دهید ببینیم چه اتفاقی می افتد. 591 00:19:42,840 --> 00:19:44,680 هشت و سه، از البته، خارج از دستور. 592 00:19:44,680 --> 00:19:45,815 بیایید مبادله. 593 00:19:45,815 --> 00:19:46,940 هشت و هفت، البته. 594 00:19:46,940 --> 00:19:47,481 خارج از دستور. 595 00:19:47,481 --> 00:19:48,280 بیایید مبادله. 596 00:19:48,280 --> 00:19:49,940 هشت و پنج، البته، اجازه دهید مبادله. 597 00:19:49,940 --> 00:19:50,560 خیلی خوب. 598 00:19:50,560 --> 00:19:51,880 فهرست طبقه بندی شده اند است. 599 00:19:51,880 --> 00:19:53,060 بله؟ 600 00:19:53,060 --> 00:19:54,280 >> OK، بدیهی است که نه. 601 00:19:54,280 --> 00:19:55,860 اما این یک کمی بهتر، درست است؟ 602 00:19:55,860 --> 00:19:57,270 از آنجا که متوجه آنچه اتفاق افتاده است. 603 00:19:57,270 --> 00:20:01,749 هر بار که ما یک مبادله، انجام کوچکتر تعداد نوع کاغذ خودنمایی به این ترتیب، 604 00:20:01,749 --> 00:20:03,790 و تعداد بیشتری کاغذ خودنمایی این راه، و یا ما 605 00:20:03,790 --> 00:20:06,880 شروع به گفت حباب به به سمت چپ یا حباب به سمت راست. 606 00:20:06,880 --> 00:20:10,080 >> در حال حاضر، آن را به اندازه کافی نیست، چرا که در بهترین حالت یک تعداد ممکن 607 00:20:10,080 --> 00:20:11,990 یک نقطه منتقل شده اند رو به جلو، یا در بدترین حالت، 608 00:20:11,990 --> 00:20:13,880 تعداد ممکن است یک نقطه نقل مکان کرد بیشتر است. 609 00:20:13,880 --> 00:20:16,369 بنابراین شما می دانید آنچه، این نوع از خوبی تا کنون کار کرده است. 610 00:20:16,369 --> 00:20:17,410 اجازه بدهید من فقط آن را امتحان کنید دوباره. 611 00:20:17,410 --> 00:20:18,880 دو و چهار، آنها خوب است. 612 00:20:18,880 --> 00:20:20,180 چهار و شش، آنها خوب است. 613 00:20:20,180 --> 00:20:21,790 شش و یک، خارج از دستور. 614 00:20:21,790 --> 00:20:23,007 بنابراین اجازه دهید شما دو مبادله. 615 00:20:23,007 --> 00:20:25,840 و در حال حاضر، توجه مشکل است شروع به گرفتن کمی بهتر است. 616 00:20:25,840 --> 00:20:27,006 شش و سه، خارج از دستور. 617 00:20:27,006 --> 00:20:28,100 اجازه دهید شما را دو مبادله. 618 00:20:28,100 --> 00:20:29,730 شش و هفت، شما خوب است. 619 00:20:29,730 --> 00:20:32,230 هفت و پنج، البته، خارج از دستور. 620 00:20:32,230 --> 00:20:33,920 هفت و هشت، به منظور. 621 00:20:33,920 --> 00:20:36,470 و در حال حاضر، من ممکن است به نیاز این کار را چند بار. 622 00:20:36,470 --> 00:20:39,830 و در واقع، برای خودتان فکر می کنم شاید چند بار حداکثر 623 00:20:39,830 --> 00:20:41,330 ممکن است من باید به راه رفتن به عقب و جلو. 624 00:20:41,330 --> 00:20:42,390 >> ما به آن می آیند. 625 00:20:42,390 --> 00:20:43,700 بنابراین دو و چهار هنوز هم خوب هستند. 626 00:20:43,700 --> 00:20:44,940 چهار و یک، نه. 627 00:20:44,940 --> 00:20:45,747 بنابراین، اجازه دهید مبادله. 628 00:20:45,747 --> 00:20:47,830 و دوباره، توجه بصری یک نوع از متلاطم است 629 00:20:47,830 --> 00:20:49,163 به سمت چپ، که در آن باید باشد. 630 00:20:49,163 --> 00:20:50,010 چهار و سه مبادله. 631 00:20:50,010 --> 00:20:51,330 چهار و شش. 632 00:20:51,330 --> 00:20:53,100 شش و پنج مبادله. 633 00:20:53,100 --> 00:20:53,959 شش و هفت. 634 00:20:53,959 --> 00:20:55,000 هفت و هشت خوب است. 635 00:20:55,000 --> 00:20:55,500 >> خوب است. 636 00:20:55,500 --> 00:20:58,460 ما در حال گرفتن حتی بهتر است. 637 00:20:58,460 --> 00:20:59,130 بنابراین اجازه دهید را ببینید. 638 00:20:59,130 --> 00:21:00,940 در حال حاضر، ما باید دو و یک. 639 00:21:00,940 --> 00:21:02,520 البته، مبادله. 640 00:21:02,520 --> 00:21:07,520 دو و سه، سه و چهار، چهار و پنج، شش و هفت، هفت و هشت. 641 00:21:07,520 --> 00:21:08,020 خوب است. 642 00:21:08,020 --> 00:21:08,730 و شما می دانید چه؟ 643 00:21:08,730 --> 00:21:11,190 از آنجا که من یک تغییر وجود دارد، به من اجازه انجام یک بررسی سلامت عقل. 644 00:21:11,190 --> 00:21:13,023 اجازه بدهید من به تمام راه را برگشت به ابتدا. 645 00:21:13,023 --> 00:21:13,680 باشه. 646 00:21:13,680 --> 00:21:14,750 یکی، two-- آره، می بینید؟ 647 00:21:14,750 --> 00:21:15,870 چیزی اشتباه بود. 648 00:21:15,870 --> 00:21:18,420 سه، چهار، پنج، شش، هفت، هشت. 649 00:21:18,420 --> 00:21:21,920 و در این پاس آخرین، شما با من در حال حاضر راحت 650 00:21:21,920 --> 00:21:23,830 این ادعا آن را طبقه بندی شده اند است؟ 651 00:21:23,830 --> 00:21:24,330 باشه. 652 00:21:24,330 --> 00:21:25,880 بصری، که کاملا درست است. 653 00:21:25,880 --> 00:21:28,410 اما عملکرد، چه را نیز فقط اتفاق می افتد 654 00:21:28,410 --> 00:21:31,870 در پاس گذشته که اجازه می دهد تا شما به منظور که این لیست در واقع 655 00:21:31,870 --> 00:21:32,660 طبقه بندی شده اند؟ 656 00:21:32,660 --> 00:21:34,477 >> چه من انجام دهید و یا این پاس آخرین نمی کنند؟ 657 00:21:34,477 --> 00:21:35,810 مخاطبان: هیچ تغییر وجود دارد. 658 00:21:35,810 --> 00:21:36,120 DAVID J. مالان: با عرض پوزش. 659 00:21:36,120 --> 00:21:37,070 مخاطبان: هیچ تغییری. 660 00:21:37,070 --> 00:21:38,653 DAVID J. مالان: هیچ تغییر وجود دارد. 661 00:21:38,653 --> 00:21:41,947 پس از آن خواهد احمقانه است از من به که همان الگوریتم دوباره 662 00:21:41,947 --> 00:21:43,780 اگر من هیچ نمی تغییر اولین بار. 663 00:21:43,780 --> 00:21:45,160 و دولت تغییر نکرده است. 664 00:21:45,160 --> 00:21:47,576 مطمئنا، من قصد ندارم به هر گونه تغییر در بار دوم. 665 00:21:47,576 --> 00:21:49,820 و به این ترتیب، آن را ایمن کن می گویند، لیست طبقه بندی شده اند است. 666 00:21:49,820 --> 00:21:52,069 >> و در واقع، این در حال حاضر چیزی که ما به طور کلی 667 00:21:52,069 --> 00:21:56,900 مرتب سازی حبابی پاسخ، به موجب آن دو به دو، شما تصحیح اشتباهات دوباره، 668 00:21:56,900 --> 00:22:00,210 و دوباره، و دوباره، شما و رفتن به جلو و عقب، 669 00:22:00,210 --> 00:22:03,370 و به عقب و جلو، تا زمانی که شما را چنین معاوضه، که در آن نقطه 670 00:22:03,370 --> 00:22:07,089 شما می توانید اعتماد به نفس، بله، من ثابت کردن همه از اشتباهات به پایان رسید. 671 00:22:07,089 --> 00:22:08,630 بیایید تنظیم مجدد کنید و سعی کنید روش دیگری. 672 00:22:08,630 --> 00:22:11,590 اگر شما بچه ها می تواند به رفتن سفارش شما یک لحظه پیش، 673 00:22:11,590 --> 00:22:13,780 که مثل این بود. 674 00:22:13,780 --> 00:22:17,640 در حال حاضر، بیایید یک رویکرد کمی بیشتر شبیه کتاب امتحان، 675 00:22:17,640 --> 00:22:21,122 به موجب آن به طور مداوم بودند ما انتخاب حرف از حروف الفبا 676 00:22:21,122 --> 00:22:22,830 که ما می خواست نوع برای مقابله با بعدی. 677 00:22:22,830 --> 00:22:26,420 شاید این نامه بالا بود، مانند A، یا یک نامه زهرا کم 678 00:22:26,420 --> 00:22:28,170 >> همه برگردند در این جهت. 679 00:22:28,170 --> 00:22:29,800 و در حال حاضر اجازه دهید من انجام این کار. 680 00:22:29,800 --> 00:22:34,880 بیایید ببینید که من می دانم من هشت شماره در اینجا. 681 00:22:34,880 --> 00:22:37,410 من قصد دارم به جلو بروید و فقط به عمد انتخاب کنید 682 00:22:37,410 --> 00:22:38,520 کوچکترین عناصر. 683 00:22:38,520 --> 00:22:38,760 درست؟ 684 00:22:38,760 --> 00:22:39,801 این به نظر می رسد بیش از حد بصری. 685 00:22:39,801 --> 00:22:42,560 چرا کوچکترین پیدا کنم عنصر، آن را که در آن تعلق، 686 00:22:42,560 --> 00:22:45,280 پس از دریافت کوچکترین عنصر بعدی، قرار دادن آن را که در آن تعلق، و فقط تکرار کنید. 687 00:22:45,280 --> 00:22:46,820 >> از آنجا که به طور مستقیم، که باید بیش از حد کار می کنند. 688 00:22:46,820 --> 00:22:48,441 بنابراین چهار، که تعداد بسیار کوچک است. 689 00:22:48,441 --> 00:22:49,940 من قصد دارم به یاد داشته باشید که در آن این است. 690 00:22:49,940 --> 00:22:50,523 یک دقیقه صبر کن. 691 00:22:50,523 --> 00:22:51,577 دو کوچکتر است. 692 00:22:51,577 --> 00:22:53,910 حال اجازه دهید به یاد داشته باشید که در آن دو است، و فراموش چهار. 693 00:22:53,910 --> 00:22:55,050 ما با که بعدا رسیدگی کند. 694 00:22:55,050 --> 00:22:56,460 شش، من علاقه مند هستم. 695 00:22:56,460 --> 00:22:57,810 هشت، من علاقه مند هستم. 696 00:22:57,810 --> 00:22:59,780 یک عدد کوچک جدید من است. 697 00:22:59,780 --> 00:23:01,470 بنابراین من قصد دارم به یاد داشته باشید که در آن یکی است. 698 00:23:01,470 --> 00:23:02,534 سه، علاقه مند است. 699 00:23:02,534 --> 00:23:03,450 هفت، علاقه مند است. 700 00:23:03,450 --> 00:23:04,530 پنج، علاقه مند است. 701 00:23:04,530 --> 00:23:07,390 >> بنابراین بدون سقوط کردن مرحله این سال، 702 00:23:07,390 --> 00:23:09,890 من قصد دارم برای گرفتن تعداد one-- و چه نام خود را دوباره بود؟ 703 00:23:09,890 --> 00:23:10,150 >> عنان: عنان. 704 00:23:10,150 --> 00:23:11,220 >> DAVID J. مالان: عنان. 705 00:23:11,220 --> 00:23:13,540 و اگر شما می تواند به من در ملحق آغاز از لیست، 706 00:23:13,540 --> 00:23:14,870 اجازه دهید شما را که در آن شما تعلق دارند. 707 00:23:14,870 --> 00:23:16,080 Unfortunately-- نام شما چیست؟ 708 00:23:16,080 --> 00:23:16,650 >> استفان: استفان. 709 00:23:16,650 --> 00:23:18,191 >> DAVID J. مالان: استفان در راه است. 710 00:23:18,191 --> 00:23:23,490 بنابراین قبل از استفان حل این مشکل، چه باید کرد؟ 711 00:23:23,490 --> 00:23:25,412 چه ما با استفان انجام دهد؟ 712 00:23:25,412 --> 00:23:27,269 >> مخاطبان: [نامفهوم]. 713 00:23:27,269 --> 00:23:28,060 DAVID J. مالان: OK. 714 00:23:28,060 --> 00:23:28,850 بنابراین ما می تواند انجام دهد. 715 00:23:28,850 --> 00:23:31,730 ما از می تواند استفان و خود چهار، و فقط آن را در یک متغیر قرار 716 00:23:31,730 --> 00:23:33,530 و نگهداری به آن برای برخی از مقدار زمان، 717 00:23:33,530 --> 00:23:35,220 در نتیجه اتاق را برای شماره یک. 718 00:23:35,220 --> 00:23:36,280 و این بد نیست. 719 00:23:36,280 --> 00:23:39,270 من می توانم نشان می دهد، چرا نمی ما فقط با قرار دادن استفان اینجا هستید؟ 720 00:23:39,270 --> 00:23:41,610 چرا ممکن است این نقض یکی از ایده های ما آغاز شده 721 00:23:41,610 --> 00:23:44,830 صحبت کردن در مورد زمان گذشته، هفته گذشته؟ 722 00:23:44,830 --> 00:23:45,330 آره؟ 723 00:23:45,330 --> 00:23:45,740 >> مخاطبان: [نامفهوم]. 724 00:23:45,740 --> 00:23:46,860 >> DAVID J. مالان: هیچ شاخص برای آن وجود دارد. 725 00:23:46,860 --> 00:23:49,735 اگر شما از این فکر می کنم، در واقع، به عنوان یک آرایه، این است یکی منفی، 726 00:23:49,735 --> 00:23:52,900 بنابراین در واقع هیچ حافظه وجود دارد در اینجا اگر این است که در واقع یک آرایه، 727 00:23:52,900 --> 00:23:55,090 ما هفته گذشته در سخنرانی اعلام کرد. 728 00:23:55,090 --> 00:23:56,250 بنابراین ما باید این کار نیست. 729 00:23:56,250 --> 00:23:57,340 ما ممکن است آن را در یک متغیر ذخیره کنید. 730 00:23:57,340 --> 00:23:57,820 >> یا شما می دانید چه؟ 731 00:23:57,820 --> 00:23:59,153 من شنیده ام کسی دیگری آن را نشان می دهد. 732 00:23:59,153 --> 00:24:01,020 چه چیز دیگری می تواند ما را با استفان انجام دهد؟ 733 00:24:01,020 --> 00:24:03,770 چرا ما فقط او را اخراج و او را که در آن بیش شماره یک بود. 734 00:24:03,770 --> 00:24:05,170 بنابراین اگر شما می خواهید برای رفتن بیش از وجود دارد. 735 00:24:05,170 --> 00:24:07,300 و در واقع، این است که راه حل خیلی خوب است. 736 00:24:07,300 --> 00:24:10,480 در حال حاضر در یک طرف، من به نوعی از آن ساخته شده مشکل بدتر است. 737 00:24:10,480 --> 00:24:13,650 در حال حاضر چهار دورتر از جایی که باید باشد. 738 00:24:13,650 --> 00:24:14,900 باید آن را به سمت این نیمه بود. 739 00:24:14,900 --> 00:24:16,100 >> اما شما می دانید چه؟ 740 00:24:16,100 --> 00:24:17,630 که می تواند بد شانس بوده است. 741 00:24:17,630 --> 00:24:18,822 شاید تعداد هشت در اینجا بود. 742 00:24:18,822 --> 00:24:20,530 و بنابراین، شاید ما را خوش شانس بدست، 743 00:24:20,530 --> 00:24:22,460 و تحت فشار قرار دادند هشت نزدیک تر به پایان. 744 00:24:22,460 --> 00:24:24,710 بنابراین در پایان روز، این نوع از همه میانگین است. 745 00:24:24,710 --> 00:24:26,085 ما لازم نیست در مورد مراقبت از چهار. 746 00:24:26,085 --> 00:24:29,400 همه من در مورد مراقبت در حال حاضر است انتخاب کوچکترین عنصر. 747 00:24:29,400 --> 00:24:32,030 >> و در حال حاضر، آنچه که من قصد دارم به انجام دهید این است در مورد شماره یک را فراموش کرده ام 748 00:24:32,030 --> 00:24:35,160 به طور دائم، زیرا من از لیست پشت سر من در حال حاضر طبقه بندی شده اند. 749 00:24:35,160 --> 00:24:36,720 بنابراین لیست من قبلا اندازه هشت بود. 750 00:24:36,720 --> 00:24:37,720 در حال حاضر، اندازه هفت است. 751 00:24:37,720 --> 00:24:40,340 بنابراین مشکل من است کوچکتر، البته خطی. 752 00:24:40,340 --> 00:24:43,022 بنابراین در حال حاضر، من قصد دارم برای انتخاب کوچکترین عنصر فعلی، دو. 753 00:24:43,022 --> 00:24:46,520 شش، هشت، چهار، سه، هفت، پنج. 754 00:24:46,520 --> 00:24:47,770 که کوچکترین عنصر بود. 755 00:24:47,770 --> 00:24:49,416 پس چه هستم من رفتن به with-- انجام نام خود را دوباره بود؟ 756 00:24:49,416 --> 00:24:49,760 >> یوسف: یوسف. 757 00:24:49,760 --> 00:24:50,085 >> DAVID J. مالان: جوزف؟ 758 00:24:50,085 --> 00:24:52,000 ما قصد داریم به ترک جوزف در محل. 759 00:24:52,000 --> 00:24:54,842 در حال حاضر، من قصد دارم به تظاهر که این بچه ها به خوبی are--، 760 00:24:54,842 --> 00:24:56,550 من می دانم که این دو در حال حاضر طبقه بندی شده اند. 761 00:24:56,550 --> 00:24:58,424 بیایید در حال حاضر در تمرکز باقی مانده از لیست. 762 00:24:58,424 --> 00:25:00,080 شش کوچکترین فعلی است. 763 00:25:00,080 --> 00:25:01,190 هشت بزرگتر است. 764 00:25:01,190 --> 00:25:02,970 چهار در حال حاضر کوچکترین جاری است. 765 00:25:02,970 --> 00:25:04,762 سه در حال حاضر کوچکترین جاری است. 766 00:25:04,762 --> 00:25:07,720 و بنابراین در حال حاضر، من قصد دارم به انتخاب سه، که is-- نام شما دوباره؟ 767 00:25:07,720 --> 00:25:08,190 سرنا: سرنا. 768 00:25:08,190 --> 00:25:10,620 DAVID J. مالان: سرنا، اگر شما می توانید گرفتن تعداد و مبادله خود را with-- 769 00:25:10,620 --> 00:25:11,550 KALSANG: Kalsang. 770 00:25:11,550 --> 00:25:12,940 DAVID J. مالان: Kalsang. 771 00:25:12,940 --> 00:25:15,220 بیا، و ما رفتن به مبادله آن دو. 772 00:25:15,220 --> 00:25:17,360 و در حال حاضر، اجازه دهید این بر روی خلبان اتوماتیک قرار داده است. 773 00:25:17,360 --> 00:25:21,589 من قصد دارم برای رفتن و ترک آن را به شما بچه ها برای انتخاب کوچکترین عناصر بعدی. 774 00:25:21,589 --> 00:25:22,380 نمیخوام، نمیخوام، نمیخوام، نمیخوام. 775 00:25:22,380 --> 00:25:24,560 شماره چهار، چه باید بکنید؟ 776 00:25:24,560 --> 00:25:26,261 بسیار عالی است. 777 00:25:26,261 --> 00:25:27,760 در حال حاضر، من قصد دارم به پاس دیگری. 778 00:25:27,760 --> 00:25:28,590 نمیخوام، نمیخوام، نمیخوام، نمیخوام. 779 00:25:28,590 --> 00:25:31,465 من پنج بعدی کوچکترین است. 780 00:25:31,465 --> 00:25:32,840 در حال حاضر، من قصد دارم را پاس کند. 781 00:25:32,840 --> 00:25:33,631 نمیخوام، نمیخوام، نمیخوام، نمیخوام. 782 00:25:33,631 --> 00:25:34,880 شش کوچکترین است. 783 00:25:34,880 --> 00:25:35,520 خوب است. 784 00:25:35,520 --> 00:25:36,585 هفت کوچکترین است. 785 00:25:36,585 --> 00:25:37,085 بدون تغییر. 786 00:25:37,085 --> 00:25:38,630 هشت کوچکترین است. 787 00:25:38,630 --> 00:25:39,170 انجام شده. 788 00:25:39,170 --> 00:25:43,900 >> بنابراین آنچه که ما فقط با تکرار انجام داده ام انتخاب یکی از عناصر پس از دیگری 789 00:25:43,900 --> 00:25:47,230 است پیاده سازی چیزی است که ما رفتن به مرتب سازی انتخابی رسمی. 790 00:25:47,230 --> 00:25:49,120 و آن را حتی شاید ساده تر برای توضیح، 791 00:25:49,120 --> 00:25:51,310 در معنای واقعی کلمه همه شما می خواهید انجام دهید فقط حفظ 792 00:25:51,310 --> 00:25:54,700 عقب و جلو رفتن از طریق لیست انتخاب، کوچکترین عنصر بعدی، 793 00:25:54,700 --> 00:25:55,720 تا زمانی که شما انجام می شود. 794 00:25:55,720 --> 00:25:58,650 >> پس از آن حتی ساده تر، شاید به طور مستقیم، از گذشته است. 795 00:25:58,650 --> 00:26:00,020 اجازه دهید یکی یکی از آخرین امتحان کنید. 796 00:26:00,020 --> 00:26:03,060 اگر شما بچه ها می تواند خود تنظیم مجدد به موقعیت های زیر 797 00:26:03,060 --> 00:26:08,600 یک زمان نهایی، بیایید ببینید که اگر ما نمی تواند در حال حاضر یکی دیگر رویکرد رسمی. 798 00:26:08,600 --> 00:26:12,857 در واقع، کسی خارج وجود دارد به پیشنهاد 799 00:26:12,857 --> 00:26:14,440 چگونه دیگری که ما ممکن است در مورد انجام این کار؟ 800 00:26:14,440 --> 00:26:17,439 بدون ریختن بیرون از buzzwords یا مرتب سازی بر از پاسخ که در حال حاضر شناخته شده است، 801 00:26:17,439 --> 00:26:19,689 فقط به طور مستقیم، آنچه می تواند ما انجام می دهیم؟ 802 00:26:19,689 --> 00:26:21,635 >> مخاطبان: [نامفهوم]. 803 00:26:21,635 --> 00:26:22,510 DAVID J. مالان: آره. 804 00:26:22,510 --> 00:26:24,620 بنابراین برخی از شهود بزرگ وجود دارد. 805 00:26:24,620 --> 00:26:28,020 چیزهای خوب به نظر می رسد اتفاق می افتد تا کنون در علوم کامپیوتر که ما تقسیم 806 00:26:28,020 --> 00:26:30,832 و تسخیر مشکل از تقسیم آن را به نصف و نصف و نیمه. 807 00:26:30,832 --> 00:26:32,540 و به این ترتیب در واقع، ما می تواند شروع به انجام این کار. 808 00:26:32,540 --> 00:26:35,754 و در واقع، که برای رفتن به، ما ببینید، یکی از بهترین راه حل های ما است. 809 00:26:35,754 --> 00:26:37,420 اما اجازه دهید به آمده است که قبل از اینکه طولانی. 810 00:26:37,420 --> 00:26:40,500 در واقع، ما قصد داریم برای انجام که کمی بعد از این هفته. 811 00:26:40,500 --> 00:26:42,180 چه چیز دیگری ممکن ما را به حل این؟ 812 00:26:42,180 --> 00:26:44,647 پس هر کس در اینجا در است سفارش به ظاهر تصادفی. 813 00:26:44,647 --> 00:26:45,230 میدونی چیه؟ 814 00:26:45,230 --> 00:26:48,320 به جای رفتن به عقب و جلو، به عقب و جلو، عقب و جلو 815 00:26:48,320 --> 00:26:50,624 در هر زمان، این احساس مانند من انجام بسیاری از پیاده روی. 816 00:26:50,624 --> 00:26:52,790 چرا من فقط در شروع آغاز از لیست، 817 00:26:52,790 --> 00:26:54,960 و فقط با قرار دادن چهار که در آن تعلق؟ 818 00:26:54,960 --> 00:26:59,680 بنابراین اجازه دهید من برای لحظه ای فرض کنیم که لیست من تنها این عنصر اول است. 819 00:26:59,680 --> 00:27:04,937 چهار در این لحظه در زمان مرتب شده اند، اگر همه من در مورد مراقبت همه چیز در اینجا است؟ 820 00:27:04,937 --> 00:27:06,520 این نوع مسلما درست، درست است؟ 821 00:27:06,520 --> 00:27:10,000 مانند لیست که شامل یک عدد باشد، و که عدد چهار است که به وضوح طبقه بندی شده اند. 822 00:27:10,000 --> 00:27:13,070 >> بنابراین اجازه دهید تصریح که این لیست طبقه بندی شده اند است. 823 00:27:13,070 --> 00:27:15,090 اما در حال حاضر من بقیه این لیست است. 824 00:27:15,090 --> 00:27:17,240 بنابراین در حال حاضر، من دو روبرو می شوند. 825 00:27:17,240 --> 00:27:21,690 دو کجا بدیهی است با توجه به چهار تعلق دارد؟ 826 00:27:21,690 --> 00:27:22,580 قبل از چهار. 827 00:27:22,580 --> 00:27:23,862 پس چه می تواند من در اینجا؟ 828 00:27:23,862 --> 00:27:24,820 دوباره بگو اسمت چی بود؟ 829 00:27:24,820 --> 00:27:25,090 >> یوسف: یوسف. 830 00:27:25,090 --> 00:27:26,030 >> DAVID J. مالان: یوسف، اگر شما می تواند گام تماس 831 00:27:26,030 --> 00:27:27,790 برای فقط یک لحظه با تعداد خود را. 832 00:27:27,790 --> 00:27:31,130 و در حال حاضر چه باید استفان را در اینجا انجام. 833 00:27:31,130 --> 00:27:33,720 بیایید تغییر استفان بیش از اینجا. 834 00:27:33,720 --> 00:27:35,520 و در حال حاضر، اجازه دهید یوسف در آمده است. 835 00:27:35,520 --> 00:27:39,660 و در حال حاضر، اجازه دهید من ادعا می کنند که همه چیز در اینجا طبقه بندی شده اند است. 836 00:27:39,660 --> 00:27:42,474 بنابراین، نتیجه مشابه، اما رویکرد اساسا متفاوت است. 837 00:27:42,474 --> 00:27:44,140 من حتی نگاه که چه چیزی وجود دارد. 838 00:27:44,140 --> 00:27:46,310 من فقط نگه داشتن در نظر گرفتن عناصر به عنوان آنها را به دست من، 839 00:27:46,310 --> 00:27:47,240 و مقابله با آنها. 840 00:27:47,240 --> 00:27:48,330 >> بنابراین در حال حاضر، من شماره شش را ببینید. 841 00:27:48,330 --> 00:27:51,110 از کجا شماره شش تعلق دارد؟ 842 00:27:51,110 --> 00:27:53,250 ما دو، چهار، شش. 843 00:27:53,250 --> 00:27:54,800 دقیقا همان جایی که او در حال حاضر است. 844 00:27:54,800 --> 00:27:57,750 بنابراین اجازه دهید که به تنهایی ترک، و در حال حاضر ادعا می کنند که این بخش از لیست 845 00:27:57,750 --> 00:27:58,772 در حال حاضر طبقه بندی شده اند. 846 00:27:58,772 --> 00:28:01,230 و به این ترتیب، این احساس اساسا در که متفاوت من فقط 847 00:28:01,230 --> 00:28:05,230 حرکت را از طریق لیست در اینجا خطی، و من دو برابر شدن هرگز به عقب. 848 00:28:05,230 --> 00:28:05,730 بله. 849 00:28:05,730 --> 00:28:06,230 خیلی خوب. 850 00:28:06,230 --> 00:28:08,190 بنابراین هشت، جایی که شما تعلق دارد؟ 851 00:28:08,190 --> 00:28:08,730 درست همین جا. 852 00:28:08,730 --> 00:28:09,310 کامل. 853 00:28:09,310 --> 00:28:10,210 بنابراین در حال حاضر، یک. 854 00:28:10,210 --> 00:28:10,900 آه اوه. 855 00:28:10,900 --> 00:28:13,010 این احساس می کند مانند آن رفتن به گران. 856 00:28:13,010 --> 00:28:15,690 در حال حاضر، در الگوریتم قبلی، من فقط عوض میکنه مردم است. 857 00:28:15,690 --> 00:28:18,648 بنابراین من ممکن است او را تمام راه را در قرار آغاز، اما پس از آن جوزف نقل مکان کرد. 858 00:28:18,648 --> 00:28:21,450 اما اگر من حرکت جوزف، در حال حاضر چه خبر است به اشتباه؟ 859 00:28:21,450 --> 00:28:24,250 >> در حال حاضر، من از undone-- من گرفته شده یک قدم به جلو و سپس 860 00:28:24,250 --> 00:28:26,300 یک قدم به عقب، چرا که اکنون جوزف خارج از سفارش می باشد. 861 00:28:26,300 --> 00:28:26,830 بنابراین اجازه دهید این کار را. 862 00:28:26,830 --> 00:28:29,150 اگر شما می تواند شماره یک را و قدم به عقب برای فقط یک لحظه. 863 00:28:29,150 --> 00:28:30,490 چگونه می توانیم put-- چه نام و نام خانوادگی خود را دوباره بود؟ 864 00:28:30,490 --> 00:28:31,130 >> عنان: عنان. 865 00:28:31,130 --> 00:28:32,610 >> DAVID J. مالان: عنان در محل؟ 866 00:28:32,610 --> 00:28:36,091 آنچه باید در رابطه با اتفاق می افتد به دو، چهار، شش و هشت؟ 867 00:28:36,091 --> 00:28:37,570 همه آنها نیاز به تغییر. 868 00:28:37,570 --> 00:28:42,590 بنابراین اگر هشت می خواهم به تغییر برای اولین بار، و سپس شش، پس از آن چهار، پس از آن دو. 869 00:28:42,590 --> 00:28:45,380 و سپس عنان، اگر شما می خواهم دوست دارم در اینجا می آیند، خوب است. 870 00:28:45,380 --> 00:28:47,760 اما در اینجا، ما فقط این نوع پرداخت قیمت 871 00:28:47,760 --> 00:28:49,510 در یک نقطه مختلف در الگوریتم. 872 00:28:49,510 --> 00:28:52,550 در حالی که در زمان گذشته با انتخاب مرتب سازی بر اساس، و حتی مرتب سازی حبابی، 873 00:28:52,550 --> 00:28:54,700 من راه رفتن به عقب و جلو، عقب و جلو، 874 00:28:54,700 --> 00:28:58,360 است که مطمئنا با اضافه کردن زمان و زرنگ، و به معنای واقعی کلمه گام به گام. 875 00:28:58,360 --> 00:29:00,660 >> مرتب سازی بر الحاق، در ابتدا نگاه، به نظر می رسد مانند آن را 876 00:29:00,660 --> 00:29:05,150 فوق العاده دقیق، که من فقط ساخت آهسته، پیشرفت تدریجی، 877 00:29:05,150 --> 00:29:07,120 اما من این نیست عقب و جلو. 878 00:29:07,120 --> 00:29:09,410 اما اگر کسی است که در واقع خارج از دستور، متوجه 879 00:29:09,410 --> 00:29:10,840 همه از کار من فقط به حال به انجام است. 880 00:29:10,840 --> 00:29:14,750 من مجبور به حرکت نیمی از لیست فقط به اتاق را برای شماره یک. 881 00:29:14,750 --> 00:29:16,790 پس از آن به همان مقدار است کار تا کنون آن را 882 00:29:16,790 --> 00:29:18,690 احساس می کند، فقط یک نوع متفاوت از کار است. 883 00:29:18,690 --> 00:29:19,370 >> بیا ادامه بدهیم. 884 00:29:19,370 --> 00:29:22,657 بنابراین در حال حاضر ما می دانیم که هر کس بین یک و هشت طبقه بندی شده اند. 885 00:29:22,657 --> 00:29:23,740 در اینجا، من شماره ی سه. 886 00:29:23,740 --> 00:29:25,864 اگر دوست دارید انتخاب کنید تا شماره سه، قدم به عقب است. 887 00:29:25,864 --> 00:29:28,260 و چه چیزی شما بچه ها باید انجام دهید؟ 888 00:29:28,260 --> 00:29:28,760 بله. 889 00:29:28,760 --> 00:29:33,070 به طوری که یکی دیگر، دو، سه مرحله است. 890 00:29:33,070 --> 00:29:36,010 سه واحد از زمان است که فقط هزینه من، به طوری که هم اکنون می توانید سه مناسب است. 891 00:29:36,010 --> 00:29:37,460 در نهایت، هفت. 892 00:29:37,460 --> 00:29:39,730 >> اجازه دهید به جلو و شما یک گام به عقب. 893 00:29:39,730 --> 00:29:42,780 این است که تنها به ما هزینه یک واحد از زمان، اما این خوب است. 894 00:29:42,780 --> 00:29:44,170 و در حال حاضر، پنج رفتن به یک کمی گران تر. 895 00:29:44,170 --> 00:29:45,340 اگر شما می خواهم به قدم به عقب. 896 00:29:45,340 --> 00:29:48,380 ما نیاز به حرکت هشت، و هفت و شش. 897 00:29:48,380 --> 00:29:50,749 و پس از آن در حال حاضر همه طبقه بندی شده اند. 898 00:29:50,749 --> 00:29:52,290 بنابراین یک دست بزرگ به داوطلبان ما در اینجا. 899 00:29:52,290 --> 00:29:53,554 خیلی از شما ممنونم. 900 00:29:53,554 --> 00:29:56,220 >> [تشویق حضار] 901 00:29:56,220 --> 00:29:56,860 >> با تشکر از همه شما. 902 00:29:56,860 --> 00:29:57,520 با تشکر از همه شما. 903 00:29:57,520 --> 00:30:02,940 بنابراین اجازه دهید در حال حاضر فقط ببینید چگونه هزینه همه از آن بود. 904 00:30:02,940 --> 00:30:06,210 بیایید شاید در نظر ساده ترین این، مرتب کردن حباب. 905 00:30:06,210 --> 00:30:09,950 و من می گویم ساده ترین، فقط به این دلیل شما می توانید آن ورزیدن تنها با حل 906 00:30:09,950 --> 00:30:11,660 رفع مشکل دو به دو در اینجا. 907 00:30:11,660 --> 00:30:13,720 رفع مشکل دو به دو در اینجا، دوباره و دوباره 908 00:30:13,720 --> 00:30:17,680 و دوباره، به عنوان بسیاری از تکرار بار که شما در واقع نیاز به. 909 00:30:17,680 --> 00:30:21,050 >> پس از آن معلوم است که با مرتب سازی حبابی، خوب، 910 00:30:21,050 --> 00:30:25,820 چگونه بسیاری از مراحل انجام من را به در پاس برای اولین بار از این الگوریتم؟ 911 00:30:25,820 --> 00:30:30,850 من ممکن است take-- اجازه دهید یکی see--، دو، سه، چهار، پنج، شش، هفت. 912 00:30:30,850 --> 00:30:32,190 و هشت عنصر در اینجا وجود دارد. 913 00:30:32,190 --> 00:30:35,280 بنابراین آن را مانند N منهای 1 گام برای رسیدن به این را از ابتدای فهرست 914 00:30:35,280 --> 00:30:36,380 به انتهای لیست. 915 00:30:36,380 --> 00:30:41,350 >> اما با انتخاب نوع، به یاد آورید که من انتخاب عناصر را دوباره و دوباره 916 00:30:41,350 --> 00:30:44,590 و دوباره که کوچکترین، من از قرار دادن آن در محل، 917 00:30:44,590 --> 00:30:46,616 اما پس از آن من نیست به دنبال پشت سر من است. 918 00:30:46,616 --> 00:30:49,490 بنابراین من فکر می کنم آن را کمی روشن تر پس از آن که اولین بار، من ممکن است 919 00:30:49,490 --> 00:30:52,680 را به تمام N منهای 1 مراحل برای پیدا کردن کوچکترین عنصر. 920 00:30:52,680 --> 00:30:55,920 سپس من آنها را در جای خود قرار داده، و من اخراج هر کس قبلا اینجا بود. 921 00:30:55,920 --> 00:30:57,500 >> اما پس از آن لازم نیست که به دنبال حفظ این عنصر، 922 00:30:57,500 --> 00:30:59,040 زیرا من می دانم آن را در حال حاضر کوچکترین. 923 00:30:59,040 --> 00:31:01,581 بنابراین در حال حاضر، من می توانید در تنها هفت نگاه عناصر، سپس شش عنصر، 924 00:31:01,581 --> 00:31:03,290 پس از آن پنج عنصر، سپس چهار عنصر است. 925 00:31:03,290 --> 00:31:06,900 و به این ترتیب ریاضی، اگر n است تعدادی از عناصر یا شماره 926 00:31:06,900 --> 00:31:11,990 که ما با آغاز شده، شما می توانید تصور کنید که این همان N منهای 1 است، 927 00:31:11,990 --> 00:31:14,250 به علاوه N منهای 2 مرحله، به علاوه N منهای 3 مرحله، 928 00:31:14,250 --> 00:31:16,780 به علاوه N منهای 4 مرحله، تمام راه را به پایین فقط یک قدم. 929 00:31:16,780 --> 00:31:18,160 و من در آخرین فرد من هستم. 930 00:31:18,160 --> 00:31:20,650 >> و اگر شما به خاطر که بسیاری آمار کتاب یا کتاب ریاضی 931 00:31:20,650 --> 00:31:24,730 کسانی که در فرمول گالینگور تماس و یا مقابل آنها، 932 00:31:24,730 --> 00:31:27,690 معلوم است که این مجموعه می توان به سادگی بیشتر ابراز 933 00:31:27,690 --> 00:31:28,857 به عنوان بار N N منهای 1 بیش از 2. 934 00:31:28,857 --> 00:31:31,273 و آن را خوب است اگر که نه در خط مقدم ذهن خود را. 935 00:31:31,273 --> 00:31:32,420 اما این در واقع درست است. 936 00:31:32,420 --> 00:31:34,449 این فقط یک راه ساده تر از نوشتن آن است. 937 00:31:34,449 --> 00:31:36,240 و سپس اگر شما فکر می کنم برگشت به مدرسه، 938 00:31:36,240 --> 00:31:38,698 زمانی که شما فقط شروع ضرب همه چیز، این البته، 939 00:31:38,698 --> 00:31:41,820 تنها N مربع منهای N تقسیم بر 2. 940 00:31:41,820 --> 00:31:44,772 همه من انجام داده ام گسترش عبارات وجود دارد. 941 00:31:44,772 --> 00:31:46,730 و بنابراین اجازه دهید این بازنویسی کمی متفاوت است. 942 00:31:46,730 --> 00:31:49,780 که N مجذور تقسیم بر 2 منهای N / 2. 943 00:31:49,780 --> 00:31:53,270 >> پس دوباره، من فقط نوع استفاده از برخی حساب قوانین وجود دارد. 944 00:31:53,270 --> 00:31:57,140 اما در حال حاضر توجه کنید که بزرگترین مدت در این عبارت، پس به صحبت می کنند، 945 00:31:57,140 --> 00:31:58,540 این است که N مربع. 946 00:31:58,540 --> 00:32:02,910 بنابراین، بله، آن را N مربع تقسیم بر 2، منهای N / 2. 947 00:32:02,910 --> 00:32:05,080 >> اما به طور کلی، اگر n است برای رفتن به یک ارزش بزرگ، 948 00:32:05,080 --> 00:32:08,740 من قصد دارم به ادعا می کنند که N مربع در حال رفتن به عامل غالب. 949 00:32:08,740 --> 00:32:10,490 این فقط رفتن به یکی از عوامل بزرگتر 950 00:32:10,490 --> 00:32:12,877 به تعداد مراحل از / 2 N. 951 00:32:12,877 --> 00:32:13,960 بنابراین چه چیزی منظورم این است که؟ 952 00:32:13,960 --> 00:32:16,795 بیایید سعی کنید یک مثال ساده، حتی هر چند ریاضی می شود بزرگ است. 953 00:32:16,795 --> 00:32:20,210 >> بنابراین فرض کنید ما 1 میلیون نفر بود به روی صحنه، یا 1 میلیون چیز 954 00:32:20,210 --> 00:32:21,320 که ما می خواهیم به مرتب کردن. 955 00:32:21,320 --> 00:32:23,730 بیایید پلاگین یک میلیون به دقیقا همان است که فرمول 956 00:32:23,730 --> 00:32:27,230 تا ببینید که چگونه بسیاری از مراحل آن طول می کشد مجموع مرتب سازی بر اساس یک میلیون عناصر با استفاده از می گویند، 957 00:32:27,230 --> 00:32:28,560 مرتب سازی بر اساس انتخاب. 958 00:32:28,560 --> 00:32:30,760 >> بنابراین ما از همان فرمول به عنوان قبل از. 959 00:32:30,760 --> 00:32:34,120 من می خواهم یک میلیون پلاگین، به طوری که من یک میلیون تقسیم مجذور 2، 960 00:32:34,120 --> 00:32:35,990 منهای یک میلیون تقسیم بر 2. 961 00:32:35,990 --> 00:32:40,180 اگر من که ریاضی در پیش در اینجا، ما 500 میلیارد 962 00:32:40,180 --> 00:32:47,460 منهای 500،000، که به ما می دهد 499999500000، 963 00:32:47,460 --> 00:32:49,270 که است که رفو بزرگ است. 964 00:32:49,270 --> 00:32:54,370 >> در واقع، اگر شما مقایسه کن 499000000000، 999 میلیون، 965 00:32:54,370 --> 00:33:01,210 500،000 برابر ارزش اصلی ما، 500 میلیارد، آن را بسیار لعنتی نزدیک. 966 00:33:01,210 --> 00:33:06,850 درست؟ N 2 تقسیم می دهد مجذور us-- یا نه، N مربع تقسیم بر 2 967 00:33:06,850 --> 00:33:08,370 به ما 500 میلیارد. 968 00:33:08,370 --> 00:33:13,510 که زیبا رفو نزدیک به 499999500000، 969 00:33:13,510 --> 00:33:17,970 است که می گویند کم کردن 500،000، یا به طور کلی، کم کردن کردن 970 00:33:17,970 --> 00:33:20,010 N مربع، واقعا یک معامله بزرگ است. 971 00:33:20,010 --> 00:33:22,490 از N مربع باعث می شود این شماره رشد واقعا سریع است. 972 00:33:22,490 --> 00:33:25,790 >> در حال حاضر، این تنها مهم است تا آنجا به عنوان ما به عنوان دانشمندان کامپیوتر، 973 00:33:25,790 --> 00:33:29,350 به طور کلی قصد ندارم به قدر در مورد تفاوت های ظریف از این فرمول 974 00:33:29,350 --> 00:33:31,400 و دقیقا همان چیزی پاسخ دقیق می باشد. 975 00:33:31,400 --> 00:33:33,390 ما مراقبت تنها این، شما می دانید چه؟ 976 00:33:33,390 --> 00:33:37,810 در پایان روز، این فرمول است در دستور N مربع. 977 00:33:37,810 --> 00:33:39,350 >> بله، ما 2 تقسیم در آن وجود دارد. 978 00:33:39,350 --> 00:33:41,360 بله، ما کم کردن N منهای 2. 979 00:33:41,360 --> 00:33:46,860 اما در پایان روز، مدت که واقعا به ما لطمه می زند و ما هزینه 980 00:33:46,860 --> 00:33:48,995 بسیاری از مراحل که مدت مربع است. 981 00:33:48,995 --> 00:33:51,370 و بنابراین، آنچه یک دانشمند کامپیوتر در حال رفتن به طور کلی انجام 982 00:33:51,370 --> 00:33:54,160 است چشم پوشی از همه از آن شرایط سفارش کوچکتر، 983 00:33:54,160 --> 00:33:56,900 و فقط در یک نگاه که بیشتر به هزینه کمک می کند. 984 00:33:56,900 --> 00:34:00,530 >> و این خوب است، چون ما می توانیم در حال حاضر در کلیت بسیار بیشتر صحبت 985 00:34:00,530 --> 00:34:02,470 در مورد الگوریتم، و می توانید آنها را مقایسه کنید. 986 00:34:02,470 --> 00:34:04,550 و این واقعیت که من با استفاده از این O عمدی است. 987 00:34:04,550 --> 00:34:06,680 زمانی که من در سفارش می گویند از، من به طور خاص هستم 988 00:34:06,680 --> 00:34:09,560 با اشاره به چیزی نام O. بزرگ و بزرگ O 989 00:34:09,560 --> 00:34:14,090 یک نماد است که یک کامپیوتر دانشمند برای توصیف 990 00:34:14,090 --> 00:34:16,710 بالایی بر روی چیزی محدود شده است. 991 00:34:16,710 --> 00:34:21,150 >> بنابراین اگر شما می گویند که یک الگوریتم در O بزرگ N مربع، 992 00:34:21,150 --> 00:34:23,380 به عنوان من پیشنهاد فقط یک لحظه پیش، این بدان معناست 993 00:34:23,380 --> 00:34:27,710 که از نظر آن در حال اجرا زمان و یا بهره وری آن، 994 00:34:27,710 --> 00:34:30,090 آن را در سفارش به طول می کشد از n مراحل مربع. 995 00:34:30,090 --> 00:34:31,420 شاید بیشتر، شاید کمتر. 996 00:34:31,420 --> 00:34:33,435 اما آن را در دستور N مربع. 997 00:34:33,435 --> 00:34:34,560 و این حد بالا. 998 00:34:34,560 --> 00:34:36,530 این نمی شود دردناک تر از آن است. 999 00:34:36,530 --> 00:34:40,800 آن را به N، نبات، و یا 2 به N، و یا چیزی بسیار بزرگتر است. 1000 00:34:40,800 --> 00:34:43,800 این یک کران بالا در هر چه که هزینه است. 1001 00:34:43,800 --> 00:34:46,150 با توجه به این، اجازه دهید فقط چند نمونه در نظر بگیرید. 1002 00:34:46,150 --> 00:34:49,820 و این فقط یک لیست محدود است زمان در حال اجرا بسیار رایج 1003 00:34:49,820 --> 00:34:52,870 برای الگوریتم های که به معنای گویا برخی از چیزهایی که ما را 1004 00:34:52,870 --> 00:34:53,600 دیده در حال حاضر. 1005 00:34:53,600 --> 00:34:58,060 >> بنابراین به عنوان مثال، در مورد مرتب سازی انتخابی، آنچه من در اینجا ادعا 1006 00:34:58,060 --> 00:35:02,250 در حال اجرا است که مرتب سازی انتخابی است زمان در دستور N مربع. 1007 00:35:02,250 --> 00:35:06,260 در بدترین حالت، من قصد دارم به یک دسته کامل از اعداد تصادفی در اینجا. 1008 00:35:06,260 --> 00:35:08,600 و همانطور که ما ریاضی را دیدم، اگر من راه رفتن 1009 00:35:08,600 --> 00:35:11,310 از طریق لیست، از طریق لیست، انتخاب بعدی کوچکترین 1010 00:35:11,310 --> 00:35:14,410 دوباره و دوباره عنصر، اگر من در واقع نوشتن تمام مراحل 1011 00:35:14,410 --> 00:35:18,750 من در نظر گرفتن به عنوان من پیشنهاد formulaically قبل از آن در دستور N مربع است 1012 00:35:18,750 --> 00:35:20,370 مراحل است که من در نظر گرفتن. 1013 00:35:20,370 --> 00:35:24,520 >> و معلوم است که حباب مرتب کردن و مرتب سازی درجی 1014 00:35:24,520 --> 00:35:27,370 فقط به عنوان در بدترین حالت آهسته است. 1015 00:35:27,370 --> 00:35:32,040 در نظر بگیرید، به عنوان مثال، مرتب سازی درجی، در آخرین الگوریتم ما با آن برخورد، 1016 00:35:32,040 --> 00:35:35,500 که تا به حال با ما در عنصر نگاه کنید، و سپس آن را که در آن تعلق. 1017 00:35:35,500 --> 00:35:38,720 و سپس ما در عنصر بعدی نگاه کرد، و قرار داده شده آن را که در آن تعلق. 1018 00:35:38,720 --> 00:35:40,990 >> بنابراین بهترین سناریوی ممکن در نظر بگیرید. 1019 00:35:40,990 --> 00:35:45,590 فرض کنید من بود داوطلبان من خط تا به معنای واقعی کلمه مانند این، از طریق هشت، 1020 00:35:45,590 --> 00:35:47,440 در حال حاضر طبقه بندی شده اند. 1021 00:35:47,440 --> 00:35:51,300 مرتب سازی بر درج چگونه بسیاری از مراحل است رفتن به مرتب سازی بر اساس هشت نفر، 1022 00:35:51,300 --> 00:35:55,640 اگر آنها در مرحله وارد به دنبال مثل این؟ 1023 00:35:55,640 --> 00:35:57,410 >> هشت نفر در حال حاضر طبقه بندی شده اند. 1024 00:35:57,410 --> 00:35:58,760 و من با استفاده از مرتب سازی بر درج. 1025 00:35:58,760 --> 00:36:02,180 که گذشته از الگوریتم باشد. 1026 00:36:02,180 --> 00:36:03,640 خوب، اجازه دهید reenact سریع واقعی است. 1027 00:36:03,640 --> 00:36:05,504 بنابراین اگر من در اینجا شروع، من یکی را ببینید. 1028 00:36:05,504 --> 00:36:06,420 کجا یک تعلق دارد؟ 1029 00:36:06,420 --> 00:36:07,730 متعلق حق در اینجا. 1030 00:36:07,730 --> 00:36:08,330 من دو را مشاهده کنید. 1031 00:36:08,330 --> 00:36:09,660 که در آن می کند دو تعلق دارد؟ 1032 00:36:09,660 --> 00:36:10,260 درست همین جا. 1033 00:36:10,260 --> 00:36:10,900 من سه را ببینید. 1034 00:36:10,900 --> 00:36:11,920 که در آن نشانی از سه تعلق دارد؟ 1035 00:36:11,920 --> 00:36:12,480 درست همین جا. 1036 00:36:12,480 --> 00:36:13,100 >> من چهار ببینید. 1037 00:36:13,100 --> 00:36:13,600 درست همین جا. 1038 00:36:13,600 --> 00:36:15,660 پنج، شش، هفت، هشت. 1039 00:36:15,660 --> 00:36:17,320 هیچ دلیلی برای خودم تکرار وجود دارد. 1040 00:36:17,320 --> 00:36:21,260 و بنابراین، چگونه بسیاری از مراحل این است که در شرایط N؟ 1041 00:36:21,260 --> 00:36:23,870 آن را در سفارش از n است مراحل، درست است؟ N منهای 1. 1042 00:36:23,870 --> 00:36:27,567 اما من در زمان تعدادی خطی از مراحل، و در حال حاضر من انجام می شود. 1043 00:36:27,567 --> 00:36:28,900 به طوری که بهترین حالت، هر چند. 1044 00:36:28,900 --> 00:36:29,983 چه در مورد بدترین حالت؟ 1045 00:36:29,983 --> 00:36:32,730 چه هشت وجود دارد تمام شد، و هفت پایین وجود دارد، 1046 00:36:32,730 --> 00:36:35,840 و یک و دو در اینجا بودند، پس که لیست واقعا معکوس شد؟ 1047 00:36:35,840 --> 00:36:38,300 >> خب، چه اتفاقی می افتد در واقع اگر این تعداد است؟ 1048 00:36:38,300 --> 00:36:41,300 و ما فقط چند نمونه را انجام دهد. 1049 00:36:41,300 --> 00:36:49,300 اگر، در واقع، تعداد هشت است که در اینجا، و اوه number--. 1050 00:36:49,300 --> 00:36:52,660 1051 00:36:52,660 --> 00:36:56,430 پس چه اگر، در واقع، تعداد هشت تمام راه را در اینجا، 1052 00:36:56,430 --> 00:36:57,790 و من با استفاده از مرتب سازی بر درج؟ 1053 00:36:57,790 --> 00:36:58,290 >> باشه. 1054 00:36:58,290 --> 00:37:00,280 من در حال حاضر آن را در محل ادعا. 1055 00:37:00,280 --> 00:37:03,152 اما در حال حاضر، seven-- که در آن هفت رفت؟ 1056 00:37:03,152 --> 00:37:04,360 البته، آن را بیش از اینجا می رود. 1057 00:37:04,360 --> 00:37:06,760 بنابراین من باید به حرکت هشت بیش از یک مکان. 1058 00:37:06,760 --> 00:37:08,554 در حال حاضر شش، به کجا می رود؟ 1059 00:37:08,554 --> 00:37:09,220 خب، همه حق است. 1060 00:37:09,220 --> 00:37:13,150 در حال حاضر، من به حرکت هشت بیش از یک مکان، و هفت بیش از یک محل، 1061 00:37:13,150 --> 00:37:14,440 و سپس من با صدای تلپ پایین شش. 1062 00:37:14,440 --> 00:37:16,870 >> بنابراین اولین بار، هزینه آن من یک قدم به حل همه چیز، 1063 00:37:16,870 --> 00:37:18,570 سپس آن را به من هزینه دو مرحله به حل همه چیز. 1064 00:37:18,570 --> 00:37:20,370 چگونه بسیاری از مراحل آن است رفتن به به رفع 1065 00:37:20,370 --> 00:37:22,720 همه چیز را به قرار دادن پنج را در جای مناسب. 1066 00:37:22,720 --> 00:37:23,340 سه. 1067 00:37:23,340 --> 00:37:29,520 از آنجا که در حال حاضر من به حرکت یک، دو، سه. 1068 00:37:29,520 --> 00:37:32,430 چگونه بسیاری از مراحل آن رفتن است را به برای قرار دادن چهار در جای مناسب. 1069 00:37:32,430 --> 00:37:36,040 4 به علاوه 5، به علاوه 6، به علاوه 7. 1070 00:37:36,040 --> 00:37:40,260 >> و پس از آن به یکسان ریاضی آنچه که ما برای مرتب سازی انتخابی است. 1071 00:37:40,260 --> 00:37:42,130 در حال حاضر این مجموعه که فقط به افزایش است. 1072 00:37:42,130 --> 00:37:45,650 1 به علاوه 2 به علاوه 3 به علاوه 4، و یا برعکس، به همراه 6 7 1073 00:37:45,650 --> 00:37:52,610 به علاوه 5 به علاوه 4 اضافه می کند تا برای امروز اهداف به در دستور N مربع. 1074 00:37:52,610 --> 00:37:57,640 >> بنابراین، اجازه دهید که بیش از حد تصریح مرتب سازی حبابی است در N مربع. 1075 00:37:57,640 --> 00:38:01,340 از آنجا که با مرتب سازی حبابی، هر هم از طریق لیست، 1076 00:38:01,340 --> 00:38:03,100 من در نظر گرفتن حدود چگونه بسیاری از مراحل؟ 1077 00:38:03,100 --> 00:38:06,260 هر بار که به معنای واقعی کلمه راه رفتن از آنجا به وجود دارد؟ 1078 00:38:06,260 --> 00:38:07,960 تقریبا N مرحله انجام شد. 1079 00:38:07,960 --> 00:38:12,650 اما چند بار ممکن است من نیاز به از طریق لیست؟ 1080 00:38:12,650 --> 00:38:13,920 >> خب، تقریبا N است. 1081 00:38:13,920 --> 00:38:15,680 شاید N منهای 1، اما تقریبا n بار. 1082 00:38:15,680 --> 00:38:16,430 خب، چرا؟ 1083 00:38:16,430 --> 00:38:19,560 خب، با مرتب سازی حبابی، اگر ما با مرتب سازی حبابی شروع، 1084 00:38:19,560 --> 00:38:23,570 با لیست در بدترین حالت ممکن وضعیت، که دوباره به طور کامل 1085 00:38:23,570 --> 00:38:25,550 به عقب، چه اتفاقی خواهد افتاد؟ 1086 00:38:25,550 --> 00:38:28,830 من از طریق لیست و تعداد یکی متعلق به تمام راه را بیش از وجود دارد. 1087 00:38:28,830 --> 00:38:33,280 >> اما با مرتب سازی حبابی، تا چه حد می کند یک حرکت در اولین گذر من از طریق لیست؟ 1088 00:38:33,280 --> 00:38:36,620 چگونه بسیاری از نقاط ایا او به جای درست نزدیک تر است؟ 1089 00:38:36,620 --> 00:38:37,240 فقط یکی. 1090 00:38:37,240 --> 00:38:40,281 بنابراین اگر شما نوع از دلیل از طریق این، هر زمان از طریق این الگوریتم، 1091 00:38:40,281 --> 00:38:41,880 مصرف تقریبا N مراحل دیوید. 1092 00:38:41,880 --> 00:38:44,940 اما چگونه بسیاری از پاس از طریق لیست آن است 1093 00:38:44,940 --> 00:38:49,060 برای رفتن به یک حباب را به به سمت چپ که در آن تعلق؟ 1094 00:38:49,060 --> 00:38:51,840 >> اون به حرکت مانند، N فضاهای این راه. 1095 00:38:51,840 --> 00:38:57,960 بنابراین فقط به انجام مرتب سازی لیست، من به راه رفتن به عقب و جلو، N بار. 1096 00:38:57,960 --> 00:39:01,540 و هر بار، من به دنبال در N عناصر. 1097 00:39:01,540 --> 00:39:05,410 این کار را انجام N چیز n بار در منظور از N مربع. 1098 00:39:05,410 --> 00:39:07,220 >> در حال حاضر، ما در برخی از دید از شورت که 1099 00:39:07,220 --> 00:39:10,440 در مشکل بعدی CS50 تعبیه شده مجموعه، رویکرد دیگری در این، 1100 00:39:10,440 --> 00:39:13,490 اما در حال حاضر، اجازه دهید فقط در نظر چند بار دیگر در حال اجرا، 1101 00:39:13,490 --> 00:39:16,840 به خصوص اگر آنهایی که مرتب سازی را یک کمی از زمان تا باورم شود. 1102 00:39:16,840 --> 00:39:21,790 یک الگوریتم که ما دیده ایم در حال حاضر چه خبر که در دستور n گام طول می کشد؟ 1103 00:39:21,790 --> 00:39:27,560 >> آنچه که باید یک تعداد خطی از مراحل است که ما را دیده ام تا کنون؟ 1104 00:39:27,560 --> 00:39:29,350 آن چیست؟ 1105 00:39:29,350 --> 00:39:30,480 جستجو راهنمای تلفن. 1106 00:39:30,480 --> 00:39:31,390 الگوریتم اول. 1107 00:39:31,390 --> 00:39:31,560 درست؟ 1108 00:39:31,560 --> 00:39:33,650 که در آن ما هستیم خطی جستجو برای مایک اسمیت؟ 1109 00:39:33,650 --> 00:39:34,150 در واقع. 1110 00:39:34,150 --> 00:39:37,180 از هفته صفر، زمانی که من شروع تبدیل یک صفحه در یک زمان، 1111 00:39:37,180 --> 00:39:40,095 و من حتی گفت که آن مهربان بود از یک الگوریتم احساس خطی، 1112 00:39:40,095 --> 00:39:42,720 و ما که در حال تصویر هیئت مدیره با خط قرمز مستقیم 1113 00:39:42,720 --> 00:39:44,678 و زرد مستقیم خط، آن واقع شد 1114 00:39:44,678 --> 00:39:46,810 الگوریتم های که در O بزرگ از n هستند. 1115 00:39:46,810 --> 00:39:50,680 >> زیرا برای پیدا کردن مایک اسمیت در یک گوشی کتاب از صفحات N، در بدترین حالت، 1116 00:39:50,680 --> 00:39:52,422 ممکن است به من N مراحل را. 1117 00:39:52,422 --> 00:39:53,630 چه در مورد گرفتن حضور و غیاب؟ 1118 00:39:53,630 --> 00:39:55,790 یک دو سه چهار پنج شش. 1119 00:39:55,790 --> 00:39:59,420 زمان اجرای این چیست الگوریتم برای گرفتن حضور و غیاب؟ 1120 00:39:59,420 --> 00:40:03,070 O بزرگ از N، چرا که در تئوری من به هر کس نقطه در اتاق. 1121 00:40:03,070 --> 00:40:05,861 >> در حال حاضر به عنوان یک کنار، آنچه در مورد بهینه سازی از هفته صفر دیگر؟ 1122 00:40:05,861 --> 00:40:08,117 دو، چهار، شش، هشت، 10، 12. 1123 00:40:08,117 --> 00:40:10,200 یک دانشمند کامپیوتر درک، یک دقیقه صبر کنید، 1124 00:40:10,200 --> 00:40:12,320 که در دستور N با دو مرحله تقسیم شده است. 1125 00:40:12,320 --> 00:40:12,820 درست؟ 1126 00:40:12,820 --> 00:40:14,444 از آنجا که من انجام دو نفر در یک زمان. 1127 00:40:14,444 --> 00:40:17,015 اما ما قصد داریم به چشم پوشی از کسانی که شرایط سفارش پایین تر، 1128 00:40:17,015 --> 00:40:19,140 و ما فقط رفتن به دور انداختن تقسیم بر 2، 1129 00:40:19,140 --> 00:40:21,830 و فقط می گویند، O بزرگ N برای این که الگوریتم است. 1130 00:40:21,830 --> 00:40:22,760 >> در مورد این یکی چی؟ 1131 00:40:22,760 --> 00:40:26,170 ما جست و خیز بیش برخی از این، اما آنچه یک الگوریتم است که ورود به سیستم از N بود؟ 1132 00:40:26,170 --> 00:40:29,900 که در زمان تقریبا ورود n گام؟ 1133 00:40:29,900 --> 00:40:30,870 شکاف و تسخیر. 1134 00:40:30,870 --> 00:40:31,369 دقیقا. 1135 00:40:31,369 --> 00:40:33,900 مانند مثال دفترچه تلفن در هفته صفر و اوایل امروز، 1136 00:40:33,900 --> 00:40:36,191 که در آن ما مشکل تقسیم دوباره و دوباره و دوباره. 1137 00:40:36,191 --> 00:40:39,070 ما آن را در هیئت مدیره در هفته به خود جلب کرد صفر به عنوان یک خط سبز منحنی، 1138 00:40:39,070 --> 00:40:41,460 و ما گفت آن روز بود یک الگوریتم لگاریتمی است. 1139 00:40:41,460 --> 00:40:44,970 >> و در واقع، تعداد مراحل آن طول می کشد به انجام تقسیم و غلبه، 1140 00:40:44,970 --> 00:40:48,610 و یا جستجوی دودویی به عنوان ما شروع آن را به عنوان در دفترچه تلفن، 1141 00:40:48,610 --> 00:40:50,680 است در دستور ورود به سیستم و مراحل. 1142 00:40:50,680 --> 00:40:52,470 و این یک بیت از یک عجیب و غریب است. 1143 00:40:52,470 --> 00:40:54,910 >> چه طول می کشد یک مرحله، یا به طور خاص 1144 00:40:54,910 --> 00:40:56,240 یک عدد ثابت از مراحل؟ 1145 00:40:56,240 --> 00:40:58,865 شاید این دو، شاید سه، اما یک دانشمند کامپیوتر فقط 1146 00:40:58,865 --> 00:41:01,423 آن را ساده به عنوان O بزرگ از 1، برخی از تعداد ثابت از مراحل. 1147 00:41:01,423 --> 00:41:04,256 چیزی است که شما می تواند انجام دهد چه خبر طول می کشد یک عدد ثابت از مراحل؟ 1148 00:41:04,256 --> 00:41:08,030 1149 00:41:08,030 --> 00:41:10,930 >> زمان در حال اجرا از کف زدن چیست؟ 1150 00:41:10,930 --> 00:41:11,920 زمان ثابت. 1151 00:41:11,920 --> 00:41:12,420 درست؟ 1152 00:41:12,420 --> 00:41:15,490 مانند، چه در زمان اجرای این انجام هر کاری که طول می کشد فقط یک 1153 00:41:15,490 --> 00:41:18,570 عمل، مانند چاپ F سلام جهان. 1154 00:41:18,570 --> 00:41:24,110 که ممکن است گفته می شود ثابت زمانی، مگر اینکه مورد گوشه ای کمتر با چاپ F، 1155 00:41:24,110 --> 00:41:28,260 چه چیزی ممکن است زمان در حال اجرا چاپ F واقع شود؟ 1156 00:41:28,260 --> 00:41:28,790 و چرا؟ 1157 00:41:28,790 --> 00:41:30,550 N اندازه گیری در این مورد چیست؟ 1158 00:41:30,550 --> 00:41:32,251 >> مخاطبان: [نامفهوم]. 1159 00:41:32,251 --> 00:41:33,250 DAVID J. مالان: دقیقا. 1160 00:41:33,250 --> 00:41:34,900 تعدادی از شخصیت های ما می خواهیم برای چاپ. 1161 00:41:34,900 --> 00:41:36,191 پس از آن بسیار حساس است. 1162 00:41:36,191 --> 00:41:39,910 امروز، ما شده ایم تمرکز زیادی در حروف و اعداد در اینجا در هیئت مدیره. 1163 00:41:39,910 --> 00:41:43,540 اما آن را نیز ممکن است کاراکتر در یک رشته واقعی. 1164 00:41:43,540 --> 00:41:46,420 پس از آن معلوم است دیگر وجود دارد اندازه گیری است که شروع خواهد شد مراقبت در مورد، 1165 00:41:46,420 --> 00:41:48,530 و مخالف است از O بزرگ، پس به صحبت می کنند. 1166 00:41:48,530 --> 00:41:50,120 >> که نماد امگا است. 1167 00:41:50,120 --> 00:41:53,380 در حالی که O بزرگ یعنی چه را، بالا در زمان حال اجرا خود را ملزم؟ 1168 00:41:53,380 --> 00:41:55,580 حداکثر، چقدر زمان ممکن است چیزی را؟ 1169 00:41:55,580 --> 00:41:59,250 Omega-- با عرض پوزش این را نگه می دارد up-- مخالف است که، 1170 00:41:59,250 --> 00:42:02,960 به موجب آن یک کران پایین در مقدار زمان چیزی ممکن است. 1171 00:42:02,960 --> 00:42:10,480 >> بنابراین. برای مثال، آنچه یک الگوریتم که گام همیشه N مربع طول می کشد؟ 1172 00:42:10,480 --> 00:42:15,600 خب، یکی از الگوریتم ما دیده ایم امروز، در واقع، ممکن است که به عنوان. 1173 00:42:15,600 --> 00:42:16,720 مرتب سازی بر اساس انتخاب. 1174 00:42:16,720 --> 00:42:18,270 مرتب سازی انتخابی بسیار احمقانه است. 1175 00:42:18,270 --> 00:42:21,760 حتی اگر با عرض پوزش الگوریتم، حتی اگر آرایه مرتب شده، 1176 00:42:21,760 --> 00:42:24,150 مرتب سازی انتخابی است که به نگه داشتن راه رفتن را از طریق لیست 1177 00:42:24,150 --> 00:42:28,907 مطمئن شوید آن را به کوچکترین است عنصر دوباره و دوباره و دوباره. 1178 00:42:28,907 --> 00:42:31,740 و حتی اگر شما در انسان مخاطبان می دانم که، یک دقیقه صبر کنید، 1179 00:42:31,740 --> 00:42:33,948 شما در حال حاضر به تصویب کوچکترین عنصر، کامپیوتر 1180 00:42:33,948 --> 00:42:37,300 نمی داند که تا زمانی که به نظر می رسد تمام راه را از طریق لیست. 1181 00:42:37,300 --> 00:42:40,240 به طور مشابه، پایین تر که همچنین ممکن است به حساب گرفته شود 1182 00:42:40,240 --> 00:42:42,000 ممکن است زمان خطی است. 1183 00:42:42,000 --> 00:42:48,260 >> چه مدت آن را به مرتب سازی بر عناصر N در بهترین 1184 00:42:48,260 --> 00:42:52,420 مورد استفاده از چیزی شبیه مرتب سازی حبابی؟ 1185 00:42:52,420 --> 00:42:54,280 فرض کنید شما در حال حاضر لیست طبقه بندی شده اند. 1186 00:42:54,280 --> 00:42:56,696 ما گفت: مرتب سازی حبابی طول می کشد در منظور از N مراحل مربع. 1187 00:42:56,696 --> 00:42:59,640 اما اگر آن را در حال حاضر مرتب شده اند؟ 1188 00:42:59,640 --> 00:43:02,310 اگر شما بعد از درک یک پاس از طریق آرایه 1189 00:43:02,310 --> 00:43:03,540 که شما هیچ معاوضه ساخته شده اید؟ 1190 00:43:03,540 --> 00:43:05,970 آیا شما نیاز به نگه داشتن ساخت بیشتر پاس؟ 1191 00:43:05,970 --> 00:43:06,470 >> شماره 1192 00:43:06,470 --> 00:43:10,340 بنابراین کمتر در مرتب سازی حبابی محدود ممکن است گفته می شود خطی. 1193 00:43:10,340 --> 00:43:11,830 امگا از n. 1194 00:43:11,830 --> 00:43:14,450 و ما می توانیم در نگاه دیگر از این به عنوان. 1195 00:43:14,450 --> 00:43:17,990 بنابراین اجازه دهید نگاهی سریع در اینجا فقط تجسم 1196 00:43:17,990 --> 00:43:20,790 تا ببینید که چگونه این تشخیص خود. 1197 00:43:20,790 --> 00:43:24,592 من قصد دارم به پایین در اینجا به این صفحه که در دسترس در وب سایت C50 است، 1198 00:43:24,592 --> 00:43:27,550 اما از آن خواهد شد درد به کار می کند، از آن استفاده می یک تکنولوژی به نام 1199 00:43:27,550 --> 00:43:30,560 اپلت های جاوا، که یک تا حد زیادی پشتیبانی نشده این روزها، 1200 00:43:30,560 --> 00:43:32,730 حداقل کروم و خاص دیگران است. 1201 00:43:32,730 --> 00:43:37,070 >> و اجازه دهید من به جلو و سرعت این و توضیح دهد که چه خبر است. 1202 00:43:37,070 --> 00:43:40,840 این تظاهرات از حباب است مرتب کردن، الگوریتم اول ما در نگاه. 1203 00:43:40,840 --> 00:43:43,950 و آن را تجسم در هر که از این میله نشان دهنده یک عدد است. 1204 00:43:43,950 --> 00:43:45,710 بزرگتر نوار، بزرگتر از عدد. 1205 00:43:45,710 --> 00:43:47,520 کوچکتر نوار، کوچکتر از عدد. 1206 00:43:47,520 --> 00:43:50,353 و شما می توانید در دید را ببینید، حتی هر چند این است که فوق العاده سریع، 1207 00:43:50,353 --> 00:43:53,699 این است که نوار قرمز است مثل من، راه رفتن به عقب و جلو رفع مشکلات. 1208 00:43:53,699 --> 00:43:56,740 شما می توانید ببینید که عناصر بزرگتر در واقع حباب تا به سمت راست، 1209 00:43:56,740 --> 00:43:59,650 و عناصر کوچکتر می حباب تا به سمت چپ. 1210 00:43:59,650 --> 00:44:01,870 و پایین در اینجا، اگر ما در واقع نگاه نزدیک تر است، 1211 00:44:01,870 --> 00:44:04,330 ما در واقع می تواند شمارش تعداد مقایسه ها و معاوضه 1212 00:44:04,330 --> 00:44:05,350 که در حال ساخته شد. 1213 00:44:05,350 --> 00:44:07,360 >> اما در عوض، اجازه دهید نگاهی در الگوریتم دوم 1214 00:44:07,360 --> 00:44:11,240 ما در پیش از آن با نگاه ما داوطلبان، مرتب سازی انتخابی. 1215 00:44:11,240 --> 00:44:13,500 بصری، آن را تا اثر بسیار متفاوت است. 1216 00:44:13,500 --> 00:44:16,820 اما آن را، دوباره، بسیار بصری، در که ما را انتخاب بعدی کوچکترین 1217 00:44:16,820 --> 00:44:18,660 عنصر، و ما باید کمی خوش شانس. 1218 00:44:18,660 --> 00:44:20,110 که اساسا سریعتر احساس می شود. 1219 00:44:20,110 --> 00:44:22,840 اما اگر ما این را دوباره و دوباره زد و دوباره با تعداد زیادی از ورودی ها، 1220 00:44:22,840 --> 00:44:26,680 خواهیم دید که آن را در واقع هنوز هم در O بزرگ N مربع. 1221 00:44:26,680 --> 00:44:29,920 >> اجازه دهید یکی یکی از آخرین انجام در اینجا، مرتب سازی درجی، 1222 00:44:29,920 --> 00:44:33,180 که الگوریتم سوم ما در، و به یاد نگاه 1223 00:44:33,180 --> 00:44:36,700 که این یکی با معاملات عناصر آن را به عنوان آنها مواجه می شود، 1224 00:44:36,700 --> 00:44:39,290 اما پس از آن شاید تغییرات چیز را به اتاق، 1225 00:44:39,290 --> 00:44:41,660 قرار دادن عناصر جایی که تعلق دارند. 1226 00:44:41,660 --> 00:44:45,330 >> و این خیلی به پایان می رسد تا دادن نتیجه نهایی. در حال حاضر هر سه از آن 1227 00:44:45,330 --> 00:44:46,490 احساس بسیار سریع است. 1228 00:44:46,490 --> 00:44:48,740 و در واقع، من آنها را فرار در یک کلیپ خیلی خوب است. 1229 00:44:48,740 --> 00:44:52,510 اما اساسا، آنها همه بسیار وحشتناک، به صداقت. 1230 00:44:52,510 --> 00:44:56,960 همه از این الگوریتم ها تا کنون که در اجرای O بزرگ N مربع 1231 00:44:56,960 --> 00:44:59,270 را بسیار کمی از هم در پایان اجرا کنید. 1232 00:44:59,270 --> 00:45:01,920 >> و در واقع، ما می توانید ببینید و احساس این آخر 1233 00:45:01,920 --> 00:45:04,090 اگر من را بالا بکشد این سومین و آخرین نسخه ی نمایشی. 1234 00:45:04,090 --> 00:45:05,840 این یکی دیگر از است تجسم که رفتن 1235 00:45:05,840 --> 00:45:08,500 برای نمایش مرتب سازی حبابی در سمت چپ، مرتب سازی بر اساس انتخاب در وسط، 1236 00:45:08,500 --> 00:45:13,410 و چیزی، به عنوان یکی از ما دست را افزایش می دهد پیشتر، 1237 00:45:13,410 --> 00:45:15,020 مرتبسازی ادغامی در سمت راست. 1238 00:45:15,020 --> 00:45:16,937 تقسیم و تسخیر استراتژی در سمت راست. 1239 00:45:16,937 --> 00:45:19,520 و این، در واقع، آنچه که ما رفتن به در نگاه کنید در روز چهارشنبه. 1240 00:45:19,520 --> 00:45:21,990 اما اجازه دهید زمان این به صورت موازی اجرا. 1241 00:45:21,990 --> 00:45:26,765 این تقریبا به همان تعداد از این عناصر، همه در حال اجرا در همان زمان. 1242 00:45:26,765 --> 00:45:30,940 1243 00:45:30,940 --> 00:45:34,440 حباب مرتب سازی بر انتظار: کاهش از انتخاب مرتب سازی بر اساس مرتب کردن بر اساس انتظار: کاهش از ادغام است. 1244 00:45:34,440 --> 00:45:36,760 >> در حال حاضر، همه آنها در حال اجرا در تئوری در همان زمان. 1245 00:45:36,760 --> 00:45:39,830 پردازنده در حال اجرا در همان سرعت، اما شما 1246 00:45:39,830 --> 00:45:44,014 می توانید احساس چقدر خسته کننده است به سرعت برای تبدیل شدن به، 1247 00:45:44,014 --> 00:45:45,930 و با چه سرعتی که فقط ما یک بیت از هفته تزریق 1248 00:45:45,930 --> 00:45:49,330 الگوریتم های صفر را می توانید ما سرعت را. 1249 00:45:49,330 --> 00:45:51,760 >> و در حال حاضر در مقایسه اجازه این در یک فرم است. 1250 00:45:51,760 --> 00:45:55,710 من قصد دارم به جلو بروید به وب سایت CS50، که در آن 1251 00:45:55,710 --> 00:45:59,020 ما باید این لینک نهایی برای امروز، که در آن کسی که در اینترنت 1252 00:45:59,020 --> 00:46:03,960 مهربانی را با هم یک ویدیو که قطاری چه های مختلف دسته بندی 1253 00:46:03,960 --> 00:46:07,510 الگوریتم های صدا مانند. 1254 00:46:07,510 --> 00:46:09,577 این مرتب سازی بر درج است. 1255 00:46:09,577 --> 00:46:12,072 >> [بوق] 1256 00:46:12,072 --> 00:46:13,070 1257 00:46:13,070 --> 00:46:16,850 >> به موجب آن شما در حال استفاده از یک فرکانس بر اساس ارتفاع نوار نوار. 1258 00:46:16,850 --> 00:46:19,826 این نوع حباب دیگر است. 1259 00:46:19,826 --> 00:46:21,822 >> [بوق بزند تاب خورده] 1260 00:46:21,822 --> 00:46:33,299 1261 00:46:33,299 --> 00:46:45,774 >> آینده آینده is-- آینده تا در کنار مرتب سازی بر انتخاب is--، 1262 00:46:45,774 --> 00:46:48,820 که در آن باز هم، ما انتخاب کوچکترین عنصر بعدی، 1263 00:46:48,820 --> 00:46:51,820 و ما می توانید ببینید آن در حال رشد از چپ به راست. 1264 00:46:51,820 --> 00:47:01,120 1265 00:47:01,120 --> 00:47:04,000 >> مرتبسازی ادغامی، برنده ما تا کنون است. 1266 00:47:04,000 --> 00:47:09,659 1267 00:47:09,659 --> 00:47:12,450 توجه داشته باشید که چگونه آن را تقسیم چیز به [نامفهوم] نیم و چهارم. 1268 00:47:12,450 --> 00:47:17,510 1269 00:47:17,510 --> 00:47:21,660 مرتب سازی بر اساس گنوم، که ما ندارد در مورد صحبت کردیم، و ایجاد بصری 1270 00:47:21,660 --> 00:47:24,450 و audally یک بیت از یک شکل و صدا های مختلف. 1271 00:47:24,450 --> 00:47:27,060 1272 00:47:27,060 --> 00:47:30,160 رفتن به جلو و عقب، تمیز کردن تا چیز. 1273 00:47:30,160 --> 00:47:32,230 همچنین بررسی heapsort بکار رفته در وب سایت این پسر است. 1274 00:47:32,230 --> 00:47:36,100 1275 00:47:36,100 --> 00:47:36,810 >> و از آن است. 1276 00:47:36,810 --> 00:47:38,210 ما به شما وقت بعدی را ببینید. 1277 00:47:38,210 --> 00:47:42,647 1278 00:47:42,647 --> 00:47:48,334 >> [WHOOSHING و موسیقی] 1279 00:47:48,334 --> 00:50:24,839