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