1 00:00:00,000 --> 00:00:11,100 2 00:00:11,100 --> 00:00:12,300 >> اسپیکر 1: ارے، سب! 3 00:00:12,300 --> 00:00:13,890 حصے پر پھر سے خوش آمدید. 4 00:00:13,890 --> 00:00:17,480 یہاں آپ دونوں کی بہت زیادہ دیکھ کر بہت خوشی ہے، اور آن لائن دیکھ رہا ہے جو ہر کسی کو. 5 00:00:17,480 --> 00:00:18,760 6 00:00:18,760 --> 00:00:20,920 لہذا، معمول کے استقبال کے طور پر واپس. 7 00:00:20,920 --> 00:00:24,360 میں آپ سب کو ایک خوبصورت تھا امید ہے کہ باقی کے مکمل ہفتے کے آخر میں،، نرمی. 8 00:00:24,360 --> 00:00:26,026 یہ کل باہر خوبصورت تھا. 9 00:00:26,026 --> 00:00:27,525 لہذا، میں آپ باہر مزہ آیا امید ہے. 10 00:00:27,525 --> 00:00:28,840 11 00:00:28,840 --> 00:00:30,610 >> اعلان کے ایک جوڑے تو سب سے پہلے. 12 00:00:30,610 --> 00:00:31,920 13 00:00:31,920 --> 00:00:32,700 گریڈنگ. 14 00:00:32,700 --> 00:00:37,350 لہذا، آپ کے سب سے زیادہ ہو جانا چاہئے ایک آپ کے شروع کے pset کے بارے میں مجھ سے ای میل، 15 00:00:37,350 --> 00:00:39,920 کے ساتھ کے طور پر 1 pset کے لئے گریڈنگ. 16 00:00:39,920 --> 00:00:41,000 17 00:00:41,000 --> 00:00:42,220 تو، صرف ایک جوڑے کی چیزیں. 18 00:00:42,220 --> 00:00:45,150 style50 میں check50 استعمال کرنے کی بات کا یقین ہو. 19 00:00:45,150 --> 00:00:47,250 یہ ہونا مراد رہے ہیں تم لوگوں کے لئے وسائل، 20 00:00:47,250 --> 00:00:50,660 اگر آپ کو ہو رہی ہے اس بات کو یقینی بنانے کے لئے آپ کر سکتے ہیں کے طور پر کئی پوائنٹس کے طور 21 00:00:50,660 --> 00:00:52,390 بیکار میں ان کو کھونے کے بغیر. 22 00:00:52,390 --> 00:00:54,407 لہذا، سٹائل کی طرح چیزیں بہت اہم ہیں. 23 00:00:54,407 --> 00:00:55,740 ہم نے اس کے لئے بند کر لے جا رہے ہیں. 24 00:00:55,740 --> 00:00:58,115 تم میں سے کچھ پہلے ہی ہو سکتا ہے آپ pset سے کہ دیکھا. 25 00:00:58,115 --> 00:00:58,920 26 00:00:58,920 --> 00:01:01,450 اور check50 صرف ایک ہے اس بات کو یقینی بنانے کے لئے واقعی بہت آسان طریقہ 27 00:01:01,450 --> 00:01:05,050 ہم اصل میں آرہے ہیں اس کا کیا صارف کو واپس کرنے کی ضرورت ہے، 28 00:01:05,050 --> 00:01:06,690 اور یہ کہ سب کچھ مناسب طریقے سے کام کر رہا ہے. 29 00:01:06,690 --> 00:01:08,690 30 00:01:08,690 --> 00:01:12,040 >> دوسری نوٹ پر، یقینی بنائیں کہ آپ درست فولڈر میں چیزیں اپ لوڈ. 31 00:01:12,040 --> 00:01:14,470 یہ میری زندگی صرف ایک بنا دیتا ہے تھوڑا سا زیادہ مشکل 32 00:01:14,470 --> 00:01:18,836 آپ pset 1 میں 2 pset کے اپ لوڈ کرتے ہیں میں چیزوں کو ڈاؤن لوڈ کیونکہ جب، 33 00:01:18,836 --> 00:01:20,085 وہ صحیح طریقے سے ڈاؤن لوڈ نہ. 34 00:01:20,085 --> 00:01:21,690 35 00:01:21,690 --> 00:01:24,560 اور میں نے اسے ایک چھوٹا سا پر wonky پتہ ایک نظام میں کی عادت کے لئے، 36 00:01:24,560 --> 00:01:26,950 لیکن صرف سپر ہو جائے ہوشیار، صرف میرے لئے ہے تو، 37 00:01:26,950 --> 00:01:30,080 تاکہ آپ کی ای میلز کو حاصل کرنے کر رہے ہیں جب کی طرح 2 بجے اور میں گریڈنگ ہوں. 38 00:01:30,080 --> 00:01:33,710 اگر نہیں، تو میں نے دیکھنے کی ضرورت پیدا کر سب کے ارد گرد آپ کی pset کے لئے. 39 00:01:33,710 --> 00:01:34,440 ٹھنڈا. 40 00:01:34,440 --> 00:01:37,270 >> میں نے اسے جلدی ہے جانتے ہیں، لیکن میں نے مکمل طور پر گارڈ سے دور لے جایا کر لی 41 00:01:37,270 --> 00:01:40,800 اس جمعہ کی وجہ سے ہے کہ ایک مضمون، اس کی طرف سے میرے پروفیسروں اوہ ہاں، پسند کیا گیا. 42 00:01:40,800 --> 00:01:42,550 یاد رکھیں، آپ کو ایک ہے جمعہ کو وجہ مضمون. 43 00:01:42,550 --> 00:01:45,780 لہذا، میں کوئی پسند جانتے ہے midterms کے بارے میں سوچنا، 44 00:01:45,780 --> 00:01:50,620 لیکن آپ کے پہلے کوئز، اکتوبر 15th پر ہے جس نے اکتوبر میں اس ہفتے شروع ہو رہا ہے. 45 00:01:50,620 --> 00:01:53,290 لہذا، یہ جلد ہو سکتا ہے آپ کی توقع سے تمام ہے. 46 00:01:53,290 --> 00:01:57,510 تاکہ آپ کے گارڈ پر جب دور پھینک دیا نہیں کر رہے ہیں I، اوہ ہے کہ اگلے ہفتے کے حصے کا ذکر 47 00:01:57,510 --> 00:02:00,560 آپ کا کوئز اگلے ہفتے، میں نے سوچا مجھے مزید آپ کو تھوڑا سا دے گا 48 00:02:00,560 --> 00:02:01,500 ابھی سائن اپ ایک سر کے. 49 00:02:01,500 --> 00:02:02,970 50 00:02:02,970 --> 00:02:04,660 >> لہذا، آپ کا مسئلہ سیٹ، نمبر تین. 51 00:02:04,660 --> 00:02:07,070 لوگوں نے پڑھا ہے کس طرح باہر تجسس کی رپورٹ؟ 52 00:02:07,070 --> 00:02:08,560 53 00:02:08,560 --> 00:02:09,199 OK. 54 00:02:09,199 --> 00:02:10,229 ہم نے ایک جوڑے کے مل گیا. 55 00:02:10,229 --> 00:02:12,320 قسم کے نیچے آخری سے لیکن ہفتے ٹھیک ہے. 56 00:02:12,320 --> 00:02:13,650 میں نے اس خوبصورت باہر تھا معلوم. 57 00:02:13,650 --> 00:02:15,120 58 00:02:15,120 --> 00:02:16,660 تو باہر توڑ. 59 00:02:16,660 --> 00:02:21,010 یقینی طور پر آپ کیا حاصل کرنے کے بعد آج کم از کم آپ کی رپورٹ پڑھ 60 00:02:21,010 --> 00:02:25,240 ڈاؤن لوڈ کرنے کی طرح کی کوشش تقسیم کوڈ اور چلانے 61 00:02:25,240 --> 00:02:27,430 پہلا ابتدائی طرح وہ کرنے کے لئے تم سے پوچھنا وہ چیز. 62 00:02:27,430 --> 00:02:28,681 63 00:02:28,681 --> 00:02:32,590 ہم استعمال کر رہے ہیں کیونکہ تقسیم کوڈ اور لائبریری 64 00:02:32,590 --> 00:02:36,790 ہم صرف -یہ صرف ہے using-- گئی ہے کہ ہم اس pset کیا ہے دوسری بار، 65 00:02:36,790 --> 00:02:38,650 پاگل چیزیں ہو سکتا ہے آپ کے آلے کے ساتھ، 66 00:02:38,650 --> 00:02:41,370 اور آپ اس کو تلاش کرنا چاہتے باہر اب بعد میں بمقابلہ. 67 00:02:41,370 --> 00:02:45,570 >> اسے جمعرات کی رات ہے یا اگر یہ بات ہے کیونکہ بدھ کی رات اور کسی وجہ سے 68 00:02:45,570 --> 00:02:48,912 آپ کے آلے کو صرف نہیں کرتا لائبریری کے ساتھ چلانا چاہتے ہیں 69 00:02:48,912 --> 00:02:50,620 یا تقسیم کے ساتھ کوڈ، اسباب کہ 70 00:02:50,620 --> 00:02:52,309 آپ بھی کوڈنگ کر شروع نہیں کر سکتے. 71 00:02:52,309 --> 00:02:54,100 آپ کو چیک نہیں کر سکتے کیونکہ یہ کام کرتا ہے تو دیکھنے کے لئے. 72 00:02:54,100 --> 00:02:55,975 آپ نہیں کریں گے کے قابل ہو جائے اس سے آگاہ کریں تو دیکھنے کے لئے. 73 00:02:55,975 --> 00:03:00,500 تم جلدی میں ان لوگوں کی دیکھ بھال کرنا چاہتے ہیں ہفتہ، اگر آپ اب بھی مجھے ای میل کر سکتے ہیں جب 74 00:03:00,500 --> 00:03:03,100 یا دیگر TFs میں سے ایک، اور ہم مقررہ لوگ حاصل کر سکتے ہیں. 75 00:03:03,100 --> 00:03:05,410 لوگ کیونکہ وہ مسائل ہیں کہ آپ کو روکنے کے لئے جا رہے ہیں 76 00:03:05,410 --> 00:03:07,120 کوئی حقیقی پیش رفت کر سے. 77 00:03:07,120 --> 00:03:10,055 یہ کہ کے طور پر، ایک مسئلے کی طرح نہیں ہے آپ کو صرف اس قسم کی اوور پر کر سکتے ہیں. 78 00:03:10,055 --> 00:03:10,712 79 00:03:10,712 --> 00:03:13,420 آپ کے ساتھ مسائل کروارہی ہیں تو آپ آلے یا تقسیم کوڈ، 80 00:03:13,420 --> 00:03:16,211 تم واقعی میں کہ لیا حاصل کرنا چاہتے ہیں جلد کی بجائے بعد کی دیکھ بھال. 81 00:03:16,211 --> 00:03:20,410 تو بھی آپ اصل میں نہیں ہو گا اگر کوڈنگ شروع، ڈسٹری بیوشن، اتارنا 82 00:03:20,410 --> 00:03:24,040 کوڈ، رپورٹ پڑھ، یقینی بنائیں سب کچھ کام کر رہا ہے. 83 00:03:24,040 --> 00:03:25,134 ٹھیک ہے؟ 84 00:03:25,134 --> 00:03:27,675 آپ صرف یہ کر سکتے ہیں، تو میں آسان ہو جائے گا آپ کی زندگی سے وعدہ کرتا ہوں. 85 00:03:27,675 --> 00:03:28,800 86 00:03:28,800 --> 00:03:31,410 اور تو آپ کو شاید جا رہے ہیں ٹھیک ہے اب اسے درست کرنے کے لئے؟ 87 00:03:31,410 --> 00:03:32,100 OK. 88 00:03:32,100 --> 00:03:33,950 لہذا، وہاں کوئی سوال ہے؟ 89 00:03:33,950 --> 00:03:35,850 کسی بھی لاجسٹک باتیں؟ 90 00:03:35,850 --> 00:03:36,910 ہر کوئی اچھی بات ہے؟ 91 00:03:36,910 --> 00:03:38,270 OK. 92 00:03:38,270 --> 00:03:41,700 >> ان لوگوں کے لئے فہ آپ کو کمرے میں اور آن لائن. 93 00:03:41,700 --> 00:03:45,437 میں سوئچ کرنے کے لئے کوشش کر رہا کیا جا رہا ہوں آلے میں پاورپوائنٹ کے درمیان 94 00:03:45,437 --> 00:03:47,270 ہم جا رہے ہیں کیونکہ کچھ کوڈنگ کر بننا 95 00:03:47,270 --> 00:03:53,630 گمنام کے مقبول مطالبہ کی طرف سے آج تجویز سروے میں نے گزشتہ ہفتے باہر بھیجا. 96 00:03:53,630 --> 00:03:55,480 لہذا، ہم نے کچھ کوڈنگ کر رکھا جائے گا. 97 00:03:55,480 --> 00:03:57,800 لہذا، آپ لوگ بھی چاہتے ہیں تو آپ کے آلات کو برطرف کرنے کے لئے، 98 00:03:57,800 --> 00:04:02,910 اور آپ کو ایک ای میل ملا ہے چاہئے ایک نمونہ فائل کے ساتھ، مجھ سے. 99 00:04:02,910 --> 00:04:04,310 ایسا کرنے کے لئے براہ مہربانی بلا جھجھک. 100 00:04:04,310 --> 00:04:07,340 >> لہذا، ہم کے بارے میں بات کرنے کے لئے جا رہے ہیں ایک debugger ہے جو GDB،. 101 00:04:07,340 --> 00:04:09,970 یہ آپ کی مدد کرنے جا رہا ہے قسم کے اعداد و شمار جہاں 102 00:04:09,970 --> 00:04:11,860 چیزیں آپ کے کوڈ میں غلط جا رہے ہیں. 103 00:04:11,860 --> 00:04:15,370 یہ واقعی میں آپ کو تیز کرنے کے لئے صرف ایک راستہ ہے اپنے کوڈ کے ذریعے یہ ہو رہا ہے کے طور پر، 104 00:04:15,370 --> 00:04:19,100 اور متغیر باہر پرنٹ کرنے کے قابل ہو جائے یا اصل میں کیا ہو رہا ہے کو دیکھنے کے 105 00:04:19,100 --> 00:04:22,980 ڈاکو آپ کے پروگرام آیات کے ذیل هیں صرف چلانے، یہ faulting نہیں کی طرح ہے، 106 00:04:22,980 --> 00:04:25,030 اور آپ کو، کوئی اندازہ طرح ہو کیا صرف یہاں کیا ہوا. 107 00:04:25,030 --> 00:04:26,730 میں اس میں ناکام رہا کیا لائن نہیں جانتے. 108 00:04:26,730 --> 00:04:29,040 یہ غلط ہو گیا، جہاں مجھے پتہ نہیں ہے. 109 00:04:29,040 --> 00:04:31,280 لہذا، GDB اس کے ساتھ آپ کی مدد کرنے کی جا رہی ہے. 110 00:04:31,280 --> 00:04:35,240 اس کے علاوہ، آپ کے لئے فیصلہ کرتے ہیں تو ہاں جاری رہے، اور 61 لے، 111 00:04:35,240 --> 00:04:38,430 یہ واقعی، واقعی ہو جائے گا آپ سب سے اچھی دوست، میں آپ کو بتا سکتا سبب 112 00:04:38,430 --> 00:04:40,840 مجھے لگتا ہے کہ کلاس کے ذریعے جا رہا ہوں کیونکہ. 113 00:04:40,840 --> 00:04:43,620 >> ہم بائنری کو دیکھنے کے لئے جا رہے ہیں تلاش کے، اگر تم لوگ یاد ہے جس 114 00:04:43,620 --> 00:04:47,540 عظیم فون بک مثال کلاس سے تماشا. 115 00:04:47,540 --> 00:04:50,620 ہم نے اس پر عمل درآمد، اور کیا جائے گا ایک تھوڑا سا زیادہ ہے کہ کے ذریعے چلنے، 116 00:04:50,620 --> 00:04:54,650 اور پھر ہم چار ذریعے جا رہے ہیں بلبلہ ہیں جو مختلف قسم کے،، 117 00:04:54,650 --> 00:04:56,285 سلیکشن، اضافے، اور ضم. 118 00:04:56,285 --> 00:04:57,830 119 00:04:57,830 --> 00:04:58,330 ٹھنڈا. 120 00:04:58,330 --> 00:05:00,390 لہذا، میں نے ذکر کیا GDB طور، ایک debugger ہے. 121 00:05:00,390 --> 00:05:01,400 122 00:05:01,400 --> 00:05:09,370 اور ان بڑے کی طرح ہیں چیزیں، بڑے کام کرتا ہے یا حکم دیتا ہے 123 00:05:09,370 --> 00:05:13,240 آپ GDB کے اندر اندر استعمال، اور میں چل جائے گا کہ آپ کو ایک دوسرے میں اس کی ایک ڈیمو کے ذریعے. 124 00:05:13,240 --> 00:05:15,360 >> تو، یہ صرف نہیں ہے تجریدی رہنے کے لئے جا. 125 00:05:15,360 --> 00:05:18,000 میں کوشش اور کنکریٹ کے طور پر کر دیتا ہوں تم لوگوں کے لئے ہر ممکن حد تک. 126 00:05:18,000 --> 00:05:19,870 لہذا، توڑ. 127 00:05:19,870 --> 00:05:22,200 یہ یا تو بریک ہو جائے گا طرح، کچھ بڑی تعداد، جس 128 00:05:22,200 --> 00:05:26,900 ، آپ کے پروگرام میں ایک لائن کی نمائندگی کرتا ہے یا آپ کو ایک تقریب کے نام کر سکتے ہیں. 129 00:05:26,900 --> 00:05:30,150 لہذا، آپ کو اہم توڑنے کا کہنا ہے کہ، یہ، اہم میں بند ہو جائیں گے 130 00:05:30,150 --> 00:05:32,400 اور تم نے اس تقریب سے گزر تے ہیں. 131 00:05:32,400 --> 00:05:36,350 >> اسی طرح آپ کو کچھ بیرونی ہے تو سویپ یا کیوب کی طرح کام، 132 00:05:36,350 --> 00:05:38,450 ہم نے گزشتہ ہفتے کو دیکھا کہ. 133 00:05:38,450 --> 00:05:41,780 آپ کو ان میں سے ایک کو توڑنے کہتے ہیں، آپ کے پروگرام کو مار دیتی ہے جب بھی، کہ 134 00:05:41,780 --> 00:05:44,290 یہ کرنے کے لئے آپ کے لئے انتظار کریں گے کیا کرنا ہے یہ بتانے کے. 135 00:05:44,290 --> 00:05:47,860 یہ صرف آپ کو اتنا پھانسی گا اس سے پہلے کہ اصل تقریب کے اندر قدم سکتا 136 00:05:47,860 --> 00:05:49,020 اور کیا ہو رہا ہے کو دیکھنے کے. 137 00:05:49,020 --> 00:05:50,370 138 00:05:50,370 --> 00:05:53,515 تو، اگلے، صرف دوران راستے skips اگلی لائن، افعال سے زیادہ جاتا ہے. 139 00:05:53,515 --> 00:05:54,730 140 00:05:54,730 --> 00:05:55,560 مرحلہ. 141 00:05:55,560 --> 00:05:56,810 ان تمام چھوٹی تجریدی ہیں. 142 00:05:56,810 --> 00:06:00,530 لہذا، میں صرف ان کے ذریعے چلانے کے لئے جا رہا ہوں، لیکن آپ کو ایک سیکنڈ میں استعمال میں ان کو نظر آئے گا. 143 00:06:00,530 --> 00:06:01,810 >> ایک تقریب میں قدم. 144 00:06:01,810 --> 00:06:04,170 تو جیسا کہ میں کہہ رہا تھا، ادل بدل، یہ کریں گے جیسے 145 00:06:04,170 --> 00:06:07,110 آپ اصل میں آپ ہیں کے طور پر اگر اجازت دے جیسے جسمانی طور پر کے اندر قدم رکھ، 146 00:06:07,110 --> 00:06:10,990 ان متغیرات کے ساتھ آپ کر سکتے ہیں گندگی، پرنٹ وہ کیا ہیں باہر، کیا ہو رہا ہے کو دیکھنے کے. 147 00:06:10,990 --> 00:06:12,140 148 00:06:12,140 --> 00:06:14,830 فہرست لفظی صرف پرنٹ گا ارد گرد کے کوڈ باہر. 149 00:06:14,830 --> 00:06:17,570 لہذا، آپ کی قسم کے بھول جاتے ہیں تو آپ کو اپنے پروگرام میں ہیں جہاں، 150 00:06:17,570 --> 00:06:19,880 یا آپ سوچ رہے ہیں کیا، اس کے ارد گرد کیا ہو رہا ہے 151 00:06:19,880 --> 00:06:23,790 یہ تو صرف ایک طبقہ پرنٹ کے اس کے ارد گرد پانچ یا چھ لائنوں کی طرح. 152 00:06:23,790 --> 00:06:26,080 تو، تم مبنی حاصل کر سکتے ہیں جہاں آپ ہیں کے بارے میں. 153 00:06:26,080 --> 00:06:27,230 154 00:06:27,230 --> 00:06:28,650 >> کچھ متغیر پرنٹ. 155 00:06:28,650 --> 00:06:34,590 لہذا، آپ کی چابی کی طرح ہے تو کیسر میں، ہم کو دیکھو گے کہ. 156 00:06:34,590 --> 00:06:36,220 آپ کو کسی بھی موڑ پر پرنٹ کلیدی کہہ سکتے ہیں. 157 00:06:36,220 --> 00:06:40,070 قدر اتنا ہے ہے ہے کہ آپ کو بتا دونگا کہ، ہو سکتا ہے کہ کہیں راستے میں، 158 00:06:40,070 --> 00:06:42,070 آپ اپنے اہم overwrote. 159 00:06:42,070 --> 00:06:45,495 تم واقعی میں اس کی وجہ سے بتا سکتے ہیں آپ اصل میں اس کی قیمت دیکھ سکتے ہیں. 160 00:06:45,495 --> 00:06:46,500 161 00:06:46,500 --> 00:06:48,780 >> مقامی لوگوں، صرف پرنٹس میں اپنے مقامی متغیر. 162 00:06:48,780 --> 00:06:53,120 لہذا، کسی بھی وقت آپ کو ایک لوپ کے اندر اندر ہیں، اور آپ کو صرف اوہ، طرح دیکھنا چاہتے ہیں. 163 00:06:53,120 --> 00:06:54,270 میرے میں نے کیا ہے؟ 164 00:06:54,270 --> 00:06:57,020 اس چابی قدر کیا ہے میں یہاں کی ابتدا ہے؟ 165 00:06:57,020 --> 00:06:58,537 اس مقام پر کیا پیغام ہے؟ 166 00:06:58,537 --> 00:07:00,370 یہ صرف تمام پرنٹ گا ان لوگوں کا، لہذا آپ کو اس 167 00:07:00,370 --> 00:07:04,330 انفرادی طور پر کرنے کی ضرورت نہیں پرنٹ I. پرنٹ پیغام، کا کہنا ہے کہ. 168 00:07:04,330 --> 00:07:04,970 پرنٹ کلیدی. 169 00:07:04,970 --> 00:07:06,190 170 00:07:06,190 --> 00:07:07,700 اور پھر دکھائیں. 171 00:07:07,700 --> 00:07:10,370 کیا اس سے فرق پڑتا ہے کہ آپ کے طور پر ہے پروگرام کے ذریعے قدم، 172 00:07:10,370 --> 00:07:13,980 یہ صرف یہ ہے کہ اس بات کو یقینی بنا دیں گے کچھ مخصوص متغیر کی نمائش 173 00:07:13,980 --> 00:07:14,780 ہر موڑ پر. 174 00:07:14,780 --> 00:07:17,160 تاکہ آپ -یہ ہے also-- ایک شارٹ کٹ ہے جہاں کی قسم 175 00:07:17,160 --> 00:07:19,530 آپ اوہ، طرح جا رکھنے کے لئے کی ضرورت نہیں ہے. 176 00:07:19,530 --> 00:07:23,150 پرنٹ کلید یا پرنٹ I. یہ صرف آپ کے لئے ایسا خود بخود گا. 177 00:07:23,150 --> 00:07:25,959 >> لہذا، اس کے ساتھ، ہم جا رہے ہیں یہ کس طرح ہوتا ہے کو دیکھنے کے لئے. 178 00:07:25,959 --> 00:07:28,000 میں کوشش کریں اور سوئچ کرنے جا رہا ہوں اپنے آلات کو. 179 00:07:28,000 --> 00:07:30,200 180 00:07:30,200 --> 00:07:31,271 میں یہ کر سکتے ہیں دیکھ. 181 00:07:31,271 --> 00:07:31,770 تمام. 182 00:07:31,770 --> 00:07:40,970 183 00:07:40,970 --> 00:07:42,370 ہم صرف اس کے عکس کی جا رہے ہیں. 184 00:07:42,370 --> 00:07:44,530 پاگل کچھ بھی نہیں ہے اپنے لیپ ٹاپ پر ویسے بھی. 185 00:07:44,530 --> 00:07:49,600 186 00:07:49,600 --> 00:07:50,100 OK. 187 00:07:50,100 --> 00:07:57,030 188 00:07:57,030 --> 00:08:01,054 یہ اس میں سے ایک ہونے کی ضرورت ہے. 189 00:08:01,054 --> 00:08:01,795 یہ اتنا چھوٹا ہے. 190 00:08:01,795 --> 00:08:03,730 191 00:08:03,730 --> 00:08:05,120 ہم یہ کر سکتے ہیں تو دیکھتے ہیں. 192 00:08:05,120 --> 00:08:09,970 193 00:08:09,970 --> 00:08:10,940 >> OK. 194 00:08:10,940 --> 00:08:15,305 یلس ظاہر ہے جدوجہد کر رہا ہے یہاں صرف ایک تھوڑا سا، 195 00:08:15,305 --> 00:08:17,995 لیکن ہم ایک لمحے میں اسے حاصل کر لیں گے. 196 00:08:17,995 --> 00:08:20,810 197 00:08:20,810 --> 00:08:22,020 OK. 198 00:08:22,020 --> 00:08:25,900 ہم صرف اس کو بڑھانے کے لئے جا رہے ہیں. 199 00:08:25,900 --> 00:08:28,770 200 00:08:28,770 --> 00:08:29,380 OK. 201 00:08:29,380 --> 00:08:31,679 ہر کسی کو اس قسم کی ہے کہ دیکھ سکتے ہیں؟ 202 00:08:31,679 --> 00:08:32,470 شاید تھوڑا سا؟ 203 00:08:32,470 --> 00:08:33,594 میں نے یہ ایک چھوٹا سا چھوٹا ہے جانتے ہیں. 204 00:08:33,594 --> 00:08:34,570 205 00:08:34,570 --> 00:08:37,530 آپ کو کافی سمجھ نہیں کر سکتے یہ بڑا بنانے کے لئے کس طرح. 206 00:08:37,530 --> 00:08:38,350 کسی کو بھی جانتا ہے تو. 207 00:08:38,350 --> 00:08:40,309 کسی کو بھی یہ بڑا بنانے کے لئے کس طرح جانتا ہے؟ 208 00:08:40,309 --> 00:08:40,932 OK. 209 00:08:40,932 --> 00:08:42,140 ہم اس کے ساتھ رول کرنے کے لئے جا رہے ہیں. 210 00:08:42,140 --> 00:08:45,801 یہ صرف ہے کیونکہ ویسے بھی کوئی فرق نہیں پڑتا کہ تم لوگوں کو کرنا چاہئے کوڈ ہے 211 00:08:45,801 --> 00:08:46,300 ہے. 212 00:08:46,300 --> 00:08:48,310 >> کیا زیادہ اہم ہے یہاں ٹرمینل ہے. 213 00:08:48,310 --> 00:08:52,840 214 00:08:52,840 --> 00:08:58,690 اور ہم کیوں یہ اتنا چھوٹا ہے یہاں ہے؟ 215 00:08:58,690 --> 00:09:02,325 216 00:09:02,325 --> 00:09:02,825 سیٹنگیں. 217 00:09:02,825 --> 00:09:07,920 218 00:09:07,920 --> 00:09:08,420 اوہ. 219 00:09:08,420 --> 00:09:09,500 سچے Ike کی. 220 00:09:09,500 --> 00:09:10,880 یہ کیسا ہے؟ 221 00:09:10,880 --> 00:09:11,770 وہاں سے باہر. 222 00:09:11,770 --> 00:09:19,370 223 00:09:19,370 --> 00:09:21,810 کہ سب کے لئے بہتر ہے؟ 224 00:09:21,810 --> 00:09:22,525 OK ،. 225 00:09:22,525 --> 00:09:23,025 ٹھنڈا. 226 00:09:23,025 --> 00:09:25,830 227 00:09:25,830 --> 00:09:28,220 >> آپ ایک CS میں ہیں جب آپ کو معلوم کلاس تکنیکی مشکلات 228 00:09:28,220 --> 00:09:32,971 the-- کی قسم کا حصہ ہیں تو، اس بات کو واضح کرتے ہیں. 229 00:09:32,971 --> 00:09:33,470 OK. 230 00:09:33,470 --> 00:09:38,060 لہذا، یہیں کے حصے میں، جو ہم یہاں پڑا. 231 00:09:38,060 --> 00:09:40,830 کیسر ایک executable فائل ہے. 232 00:09:40,830 --> 00:09:41,800 تو میں نے اسے بنایا. 233 00:09:41,800 --> 00:09:46,370 لہذا، GDB کے ساتھ کا احساس کرنے کے لئے ایک بات ہے کہ یہ صرف فائلوں پر کام کرتا ہے. 234 00:09:46,370 --> 00:09:48,040 لہذا، اگر آپ کو ایک dotsy پر چلانے نہیں کر سکتے ہیں. 235 00:09:48,040 --> 00:09:50,532 آپ اصل میں بنانے کے لئے ہے اپنے کوڈ کو آگاہ کریں کہ اس بات کا یقین، 236 00:09:50,532 --> 00:09:51,865 اور یہ اصل میں چلایا جا سکتا ہے. 237 00:09:51,865 --> 00:09:52,970 238 00:09:52,970 --> 00:09:56,186 >> اگر ایسا نہیں ہوتا تو کیا، اس بات کو یقینی بنانے کے مرتب، اسے مرتب کرنے کے لئے حاصل، 239 00:09:56,186 --> 00:09:57,810 تا کہ تم اس قسم کی اس کے ذریعے چلا سکتے ہیں. 240 00:09:57,810 --> 00:10:04,590 لہذا، GDB شروع کرنے، آپ کیا ہے، گلوریا قسم GDB، اور پھر صرف 241 00:10:04,590 --> 00:10:06,250 آپ چاہتے ہیں کہ فائل. 242 00:10:06,250 --> 00:10:08,240 میں نے ہمیشہ کیسر ہجے میں غلطی. 243 00:10:08,240 --> 00:10:11,730 لیکن آپ اس بات کو یقینی بنانا چاہتے ہیں یہ ایک executable ہے کے بعد سے، 244 00:10:11,730 --> 00:10:14,210 TI کی ڈاٹ فلیش تا کہ اگر آپ جا رہے ہیں کا مطلب ہے کہ 245 00:10:14,210 --> 00:10:19,240 CSI آپ کو پھانسی کے لئے جا رہے چلانے کے یہ ٹھیک کرنے والا کھولتا کے ساتھ یا تو فائلوں. 246 00:10:19,240 --> 00:10:19,910 OK. 247 00:10:19,910 --> 00:10:22,885 لہذا، آپ کو اس کے، آپ کو ملتا ہے غیر واضح کی اس قسم. 248 00:10:22,885 --> 00:10:24,250 249 00:10:24,250 --> 00:10:25,750 اسے ٹھیک کرنے والا کھولتا کے بارے میں صرف ہر چیز ہے. 250 00:10:25,750 --> 00:10:28,200 تم سچ میں کرنے کی ضرورت نہیں ابھی اس کے بارے میں فکر. 251 00:10:28,200 --> 00:10:31,460 آپ کو دیکھ کے طور پر اور، ہم نے اس کے پاس کھلی والدین، جی ڈی پی، قریبی والدین، 252 00:10:31,460 --> 00:10:34,690 اور صرف کی قسم کی طرح لگتا ہے ہمارا کمانڈ لائن، ہے نا؟ 253 00:10:34,690 --> 00:10:37,010 >> لہذا، ہم do-- کیا کرنا چاہتے --So، پہلی بات 254 00:10:37,010 --> 00:10:39,570 ہم منتخب کرنے کے لئے چاہتے ہیں ایک جگہ اس کو توڑنے کی. 255 00:10:39,570 --> 00:10:42,332 لہذا، ایک بگ ہے یہ کیسر پروگرام میں 256 00:10:42,332 --> 00:10:44,290 میں اس کو متعارف کرانے ہے کہ ہم باہر تلاش کرنے کے لئے جا رہے ہیں. 257 00:10:44,290 --> 00:10:45,330 258 00:10:45,330 --> 00:10:56,350 یہ ان پٹ لیتا ہے یہ کیا کرتا ہے تمام بڑے حروف میں Barfoo، اور کسی وجہ سے 259 00:10:56,350 --> 00:11:01,950 یہ صرف چھوڑ دیتا ہے اے تبدیل نہیں ہوتا اسے اکیلے،، صحیح باقی سب کچھ ہے 260 00:11:01,950 --> 00:11:03,980 لیکن دوسرا خط A کوئی تبدیلی نہیں رہتا. 261 00:11:03,980 --> 00:11:07,120 لہذا، ہم کوشش کرنے کے لئے جا رہے ہیں اور کہ ہے کیوں سمجھ. 262 00:11:07,120 --> 00:11:10,440 لہذا، سب سے پہلی چیز آپ عام طور پر آپ GDB پر شروع جب بھی کرنا چاہتا ہوں 263 00:11:10,440 --> 00:11:12,010 اس کو توڑنے کے اعداد و شمار جہاں ہے. 264 00:11:12,010 --> 00:11:14,956 >> تو جو شہنشاہ ایک بہت مختصر پروگرام ہے. 265 00:11:14,956 --> 00:11:16,330 ہم صرف صحیح، ایک تقریب ہے؟ 266 00:11:16,330 --> 00:11:18,520 کیسر میں ہماری تقریب کیا تھی؟ 267 00:11:18,520 --> 00:11:19,590 268 00:11:19,590 --> 00:11:24,350 صرف ایک تقریب، اہم حق ہے؟ 269 00:11:24,350 --> 00:11:26,490 مین کو ایک تقریب ہے اپنے تمام پروگراموں کے لئے. 270 00:11:26,490 --> 00:11:29,230 آپ بنیادی ہی نہیں کیا تو میں شاید کیا ایک فکر مند تھوڑا حق اب ہو جائے، 271 00:11:29,230 --> 00:11:31,000 لیکن میں آپ کو سب وہاں میں Main تھا امید ہے. 272 00:11:31,000 --> 00:11:34,150 تو، کیا ہم کر سکتے ہیں کہ ہم کر سکتے ہیں ہے صرف بس ایسے ہی، مین توڑنے. 273 00:11:34,150 --> 00:11:35,190 لہذا، یہ ٹھیک، کہتے ہیں. 274 00:11:35,190 --> 00:11:37,430 ہم وہاں ہماری توڑ مقام ایک قائم. 275 00:11:37,430 --> 00:11:42,870 >> لہذا، یاد کرنے کی بات یہ ہے کہ اب کیسر ہے ایک کمانڈ لائن کی دلیل صحیح لگتے ہیں 276 00:11:42,870 --> 00:11:45,150 اور ہم کہیں کہ ابھی تک نہیں کیا ہے. 277 00:11:45,150 --> 00:11:47,560 لہذا، جو تم کرتے ہو جب ہے آپ اصل میں چلانے کے لئے جانا 278 00:11:47,560 --> 00:11:51,540 پروگرام آپ ہو کہ کسی بھی پروگرام GDB میں چل رہا ہے کہ کمانڈ لائن کی ضرورت 279 00:11:51,540 --> 00:11:55,010 دلائل، آپ کو ان پٹ کے لئے جا رہے جب آپ پہلی بار اس کا چلنا شروع. 280 00:11:55,010 --> 00:11:59,280 لہذا، اس معاملے میں، ہم کرتے ہیں تین میں سے ایک بٹن کے ساتھ چلائیں. 281 00:11:59,280 --> 00:12:00,770 282 00:12:00,770 --> 00:12:02,040 اور یہ اصل میں شروع ہو جائے گا. 283 00:12:02,040 --> 00:12:08,480 >> آپ کو یہاں دیکھ تو، اگر، ہم ہیں RC 2 کے برابر نہیں ہے، تو. 284 00:12:08,480 --> 00:12:12,210 تو تم لوگ سب کو ہے تو میں اٹھ باہر بھیجا کہ وہ فائل 285 00:12:12,210 --> 00:12:15,100 آپ اس طرح ہے کہ نظر آئے گا پہلی سطر ہمارے مرکزی تقریب، ہے نا؟ 286 00:12:15,100 --> 00:12:17,890 یہ ہم ہے تو دیکھنے کے لئے جانچ پڑتال ہے دلائل کی صحیح تعداد. 287 00:12:17,890 --> 00:12:20,620 لہذا، آپ سوچ رہے ہیں تو RC درست ہے تو، 288 00:12:20,620 --> 00:12:23,250 آپ کو صرف پرنٹ RC طرح کچھ کر سکتے. 289 00:12:23,250 --> 00:12:24,380 290 00:12:24,380 --> 00:12:28,640 RC ہے جو، دو ہے ہم، حق کی توقع کیا؟ 291 00:12:28,640 --> 00:12:32,010 >> لہذا، ہم اگلے جا سکتے ہیں، اور کے ذریعے جاری رہے. 292 00:12:32,010 --> 00:12:33,200 لہذا، ہم نے وہاں کچھ اہم ہے. 293 00:12:33,200 --> 00:12:34,260 294 00:12:34,260 --> 00:12:37,090 اور ہم نے اپنے اہم باہر پرنٹ کر سکتے ہیں یہ صحیح ہے بات کو یقینی بنانا. 295 00:12:37,090 --> 00:12:38,380 296 00:12:38,380 --> 00:12:39,500 دلچسپ. 297 00:12:39,500 --> 00:12:41,210 نہیں بالکل ہم توقع کیا. 298 00:12:41,210 --> 00:12:44,810 لہذا، ایک بات کا احساس کرنے بھی GDB کے ساتھ، ہے 299 00:12:44,810 --> 00:12:49,000 آپ اصل میں مارا جب تک یہ نہیں ہے کہ اگلا، کہ اگر آپ نے ابھی دیکھا ہے کہ لائن 300 00:12:49,000 --> 00:12:50,720 اصل میں پھانسی دے دی ہے. 301 00:12:50,720 --> 00:12:53,870 لہذا، اس معاملے میں کلیدی ابھی تک تفویض نہیں کیا گیا ہے. 302 00:12:53,870 --> 00:12:57,050 لہذا، کلیدی کچھ ردی کی ٹوکری کی قیمت ہے آپ وہاں سے نیچے دیئے پر دیکھتے ہیں کہ. 303 00:12:57,050 --> 00:13:03,680 منفی $ 120-- -یہ کے ایک ارب اور کچھ عجیب چیزیں ٹھیک ہے؟ 304 00:13:03,680 --> 00:13:05,340 یہ ہم توقع ہے کہ اہم نہیں ہے. 305 00:13:05,340 --> 00:13:10,720 لیکن ہم پھر اگلا مارا، اور اگر ہم کوشش کریں اور پرنٹ کی چابی، یہ تین ہے. 306 00:13:10,720 --> 00:13:11,710 >> ہر کوئی اس کو دیکھا؟ 307 00:13:11,710 --> 00:13:13,780 لہذا، اگر آپ کو کچھ مل جائے تو آپ کی طرح ہو کہ، انتظار. 308 00:13:13,780 --> 00:13:15,540 یہ مکمل طور پر ہے غلط، اور مجھے نہیں معلوم 309 00:13:15,540 --> 00:13:20,150 میں نے یہ سب کرنا چاہتے ہیں کیونکہ یہ ہو گا کہ کس طرح ایک فون نمبر مقرر کرنا، ایک متغیر، 310 00:13:20,150 --> 00:13:22,900 پرنٹنگ کوشش، اگلے مار کوشش اگر وہ کام کریں اسے دوبارہ، اور دیکھو. 311 00:13:22,900 --> 00:13:27,830 یہ صرف پھانسی جا ہے کیونکہ اور اصل میں آپ کے بعد کچھ تفویض 312 00:13:27,830 --> 00:13:29,340 اگلے مارا. 313 00:13:29,340 --> 00:13:30,336 ہر کسی کو احساس ہے؟ 314 00:13:30,336 --> 00:13:30,836 اہ ہہ؟ 315 00:13:30,836 --> 00:13:33,220 >> اسپیکر 2: جب آپ کو بے ترتیب نمبرز اس کا کیا مطلب ہے؟ 316 00:13:33,220 --> 00:13:34,790 >> اسپیکر 1: یہ صرف بے ترتیب ہے. 317 00:13:34,790 --> 00:13:35,710 یہ صرف ردی کی ٹوکری میں ہے. 318 00:13:35,710 --> 00:13:38,320 یہ صرف کچھ ہے کہ آپ کمپیوٹر تصادفی تفویض کرے گا. 319 00:13:38,320 --> 00:13:39,721 320 00:13:39,721 --> 00:13:40,220 ٹھنڈا. 321 00:13:40,220 --> 00:13:45,760 تو، اب ہم کے ذریعے منتقل، اور تو کر سکتے ہیں اب ہم اس سادہ متن GetString کا ہے. 322 00:13:45,760 --> 00:13:48,600 لہذا، مجھے صرف متعارف کرانے کیا ہم یہاں اگلے مارا ہو گا جب. 323 00:13:48,600 --> 00:13:51,320 ہمارے GDB نوعیت کا حق، غائب؟ 324 00:13:51,320 --> 00:13:55,720 کہ GetString کیونکہ اب عمل کر رہا ہے، ٹھیک ہے؟ 325 00:13:55,720 --> 00:14:01,460 ہم نے دیکھا تو جب، سادہ متن کے برابر GetString کے، کھلے والدین اور والدین، 326 00:14:01,460 --> 00:14:04,380 اور ہم اگلے مارا، کہ ہے اصل میں اب سے پھانسی. 327 00:14:04,380 --> 00:14:06,580 لہذا، اس کے لئے انتظار کر رہا ہے پٹ کچھ ہمیں. 328 00:14:06,580 --> 00:14:13,560 >> لہذا، ہم ان پٹ کے لئے ہمارے کھانے جا رہے ہیں جس میں میں نے تم سے کہا تھا کے طور پر اس میں ناکامی ہے کیا ہے 329 00:14:13,560 --> 00:14:18,020 اور یہ کہ صرف یہ ہے کہ کا کہنا ہے کہ بند، ختم قتل 330 00:14:18,020 --> 00:14:19,980 بریکٹ تو یہ ہے کا مطلب کہ لوپ سے باہر باہر نکلنے. 331 00:14:19,980 --> 00:14:21,170 332 00:14:21,170 --> 00:14:25,420 میں ہوں تو کے طور پر، ہم، اب اگلے مارا، اور کر سکتے ہیں یقین ہے کہ آپ کیسر سے واقف تمام ہو، 333 00:14:25,420 --> 00:14:27,260 ایسا کرنے جا رہا ہے اس لائن کیا ہے، ہے. 334 00:14:27,260 --> 00:14:32,030 int میں 0 برابر لئے ہے، (ن) کے برابر ہے strlen کی، سادہ متن، اور پھر 335 00:14:32,030 --> 00:14:33,960 میں (ن)، میں، کے علاوہ، کے علاوہ سے بھی کم ہے. 336 00:14:33,960 --> 00:14:35,210 کیا کرنے والے اس لوپ کیا ہے؟ 337 00:14:35,210 --> 00:14:37,900 338 00:14:37,900 --> 00:14:39,160 آپ کے پیغام کو کھولنے. 339 00:14:39,160 --> 00:14:39,770 ٹھنڈا. 340 00:14:39,770 --> 00:14:41,330 تو، چلو کہ کر شروع کرتے ہیں. 341 00:14:41,330 --> 00:14:47,210 >> لہذا، اس شرط کو کرنا چاہئے ہمارے پہلے ایک کے لئے، سے ملنے کے؟ 342 00:14:47,210 --> 00:14:52,250 یہ ایک B ہے، یہ سادہ متن میں ہم ہے ہمارے مقامی لوگوں کے بارے میں معلومات حاصل کر سکتے ہیں. 343 00:14:52,250 --> 00:14:53,610 344 00:14:53,610 --> 00:14:57,970 لہذا، میں صفر ہے، اور، چھ جو اگر ہم امید کرتے ہیں، اور ہمارے اہم تین ہے. 345 00:14:57,970 --> 00:14:59,227 احساس ہے کہ تمام، حق؟ 346 00:14:59,227 --> 00:15:01,310 ان لوگوں کی تعداد سب ہیں بالکل کہ وہ کیا ہونا چاہئے. 347 00:15:01,310 --> 00:15:02,590 348 00:15:02,590 --> 00:15:03,870 لہذا، ہم؟ 349 00:15:03,870 --> 00:15:05,620 اسپیکر 3: میں نے کیا کان کے لئے بے ترتیب تعداد. 350 00:15:05,620 --> 00:15:09,156 351 00:15:09,156 --> 00:15:12,030 اسپیکر 1: ٹھیک ہے، ہم -ہم چیک کر سکتے ہیں ایک سیکنڈ میں اس کے بارے میں بات چیت کر سکتے. 352 00:15:12,030 --> 00:15:14,110 353 00:15:14,110 --> 00:15:15,750 لیکن آپ کو اس ہو رہی چاہئے. 354 00:15:15,750 --> 00:15:17,700 355 00:15:17,700 --> 00:15:20,130 لہذا، ہم ایک سرمایہ ہے تو ہمارے پہلے ایک کے لئے B، 356 00:15:20,130 --> 00:15:22,080 یہ شرط صحیح، اسے پکڑنے چاہئے؟ 357 00:15:22,080 --> 00:15:27,120 ہم اگلے مارا تو، اگر، ہم دیکھتے ہیں یہ تو اصل میں executes ہے کہ. 358 00:15:27,120 --> 00:15:29,220 آپ کو مندرجہ ذیل کر رہے ہیں کیونکہ آپ کے کوڈ میں ساتھ، 359 00:15:29,220 --> 00:15:33,460 یہاں اس لائن، جہاں سادہ متن میں یہ ریاضی کے ساتھ تبدیل کر رہا ہے، 360 00:15:33,460 --> 00:15:35,720 صرف تو تو executes ہے حالت درست درست ہے؟ 361 00:15:35,720 --> 00:15:36,905 362 00:15:36,905 --> 00:15:40,240 >> GDB صرف آپ کو دکھانے کے لئے جا رہی ہے اصل میں قتل کر رہے ہیں چیزوں. 363 00:15:40,240 --> 00:15:45,140 یہ تو حالت سے ملاقات نہیں کیا گیا تھا اگر ایسا ہے تو، یہ ہے صرف اگلی لائن پر جا رہا. 364 00:15:45,140 --> 00:15:46,540 ٹھیک ہے؟ 365 00:15:46,540 --> 00:15:48,510 لہذا، ہم نے اس کے پاس. 366 00:15:48,510 --> 00:15:51,171 اس بریکٹ اس کا مطلب اب اس لوپ سے باہر سے بند کر دیا. 367 00:15:51,171 --> 00:15:52,420 لہذا، یہ پھر سے شروع کرنے جا رہا ہے. 368 00:15:52,420 --> 00:15:54,760 369 00:15:54,760 --> 00:15:56,280 بس ایسے ہی. 370 00:15:56,280 --> 00:15:59,120 لہذا، ہم نے معلومات حاصل کر سکتے ہیں ہمارے یہاں کے مقامی لوگوں کے بارے میں، 371 00:15:59,120 --> 00:16:02,575 اور ہم نے اپنے سب سے پہلے دیکھیں خط، صحیح بدل گیا ہے؟ 372 00:16:02,575 --> 00:16:05,150 یہ ہونا چاہئے کے طور پر اس کا، اب ایک ای ہے. 373 00:16:05,150 --> 00:16:07,360 لہذا، ہم پر جاری رکھ سکتے ہیں. 374 00:16:07,360 --> 00:16:08,500 >> اور ہم یہ چیک کروائے. 375 00:16:08,500 --> 00:16:09,916 اور اس چیک کا حق، کام کرنا چاہئے؟ 376 00:16:09,916 --> 00:16:12,570 یہ تبدیل کیا جانا چاہئے A. ہے اگے تین حروف. 377 00:16:12,570 --> 00:16:14,320 378 00:16:14,320 --> 00:16:16,530 لیکن آپ کو، ہم محسوس کریں تو کچھ مختلف ملے. 379 00:16:16,530 --> 00:16:17,580 380 00:16:17,580 --> 00:16:22,860 یہاں اس صورت اپ میں So، اسے پکڑ لیا یہ، اور اسی طرح اس لائن، کو پھانسی دے دی 381 00:16:22,860 --> 00:16:28,620 ہمارے B. نظر ثانی کی ہے جس لیکن، یہاں اس صورت میں، 382 00:16:28,620 --> 00:16:32,860 ہم اسے صرف اس کو نظر انداز کردیا ہے کہ ہے، اور [میں گئے تھے؟ L siff. ؟] 383 00:16:32,860 --> 00:16:34,660 تو کچھ وہاں ہو رہا ہے. 384 00:16:34,660 --> 00:16:37,780 یہ کیا کہ تم سے کہہ رہا ہے، ہم، یہ یہاں پکڑ کرنا چاہئے جانتے ہیں کہ 385 00:16:37,780 --> 00:16:39,200 لیکن یہ نہیں ہے. 386 00:16:39,200 --> 00:16:42,210 کسی کو کیا دیکھ سکتے ہیں ہماری مسئلہ یہ ہے کہ لائن میں ہے؟ 387 00:16:42,210 --> 00:16:45,380 388 00:16:45,380 --> 00:16:46,969 یہ ایک بہت منٹ کی بات ہے. 389 00:16:46,969 --> 00:16:48,510 اور آپ کو بھی آپ کے کوڈ کو دیکھ سکتا ہے. 390 00:16:48,510 --> 00:16:49,980 391 00:16:49,980 --> 00:16:54,940 اس میں یہ بھی ہے کہ یہ کیا سطر میں بھولنا line-- ہے وہاں میں لیکن یہ [اشراوی] میں ہے. 392 00:16:54,940 --> 00:16:55,480 جی ہاں؟ 393 00:16:55,480 --> 00:16:58,639 >> 4 سپیکر: یہ اس سے بڑا پر ہے صفحہ آپ کی کتاب میں اسے پڑھا تو. 394 00:16:58,639 --> 00:16:59,430 اسپیکر 1: بالکل. 395 00:16:59,430 --> 00:17:02,620 لہذا، ٹھیک کرنے والا کھولتا بتا نہیں سکا آپ کہ، لیکن ٹھیک کرنے والا کھولتا 396 00:17:02,620 --> 00:17:05,880 ایک لائن کرنے کے لئے آپ نیچے مل سکے اگر آپ کام نہیں کر رہا جانتے ہیں کہ. 397 00:17:05,880 --> 00:17:09,319 اور کبھی کبھی، جب خاص طور پر بعد میں سمسٹر، جب میں 398 00:17:09,319 --> 00:17:12,910 آپ کو ایک سو، ایک ساتھ کام کر رہے چند سو کوڈ کی لائنیں، اور آپ کو 399 00:17:12,910 --> 00:17:16,190 اس میں ناکام رہا ہے پتہ نہیں کہاں، یہ ایسا کرنے کے لئے ایک عظیم طریقہ ہے. 400 00:17:16,190 --> 00:17:17,900 401 00:17:17,900 --> 00:17:18,989 لہذا، ہم نے اپنے مسئلے پایا. 402 00:17:18,989 --> 00:17:21,530 تم، آپ کی فائل میں اس کو ٹھیک کر سکتے ہیں اور پھر آپ کو، دوبارہ چلائیں کر سکتے تھے 403 00:17:21,530 --> 00:17:23,029 اور سب کچھ اچھی طرح سے کام کریں گے. 404 00:17:23,029 --> 00:17:24,970 405 00:17:24,970 --> 00:17:30,590 اور سب سے بڑی بات یہ ہے یہ ٹھیک ہے، کی طرح لگ سکتا ہے. 406 00:17:30,590 --> 00:17:31,090 جی ہاں. 407 00:17:31,090 --> 00:17:31,370 ٹھنڈا. 408 00:17:31,370 --> 00:17:32,744 تم آپ کے لئے تلاش کر رہے ہیں کیا پتہ تھا. 409 00:17:32,744 --> 00:17:34,910 لہذا، آپ کو کرنے کی کیا جانتے تھے. 410 00:17:34,910 --> 00:17:39,021 >> GDB آپ کی وجہ سے انتہائی مددگار ثابت ہو سکتا ہے ان سب چیزوں کو پرنٹ کر سکتے ہیں کہ آپ کو 411 00:17:39,021 --> 00:17:39,520 نہیں کریں گے. 412 00:17:39,520 --> 00:17:41,160 یہ بہت زیادہ مفید printf کے مقابلے میں ہے. 413 00:17:41,160 --> 00:17:43,440 کس طرح بہت سے آپ کو استعمال کے printf بیانات طرح 414 00:17:43,440 --> 00:17:46,200 ایک مسئلے سے، درست تھا جہاں معلوم کرنا؟ 415 00:17:46,200 --> 00:17:48,450 لہذا، اس کے ساتھ، آپ ایسا نہیں کرتے واپس جا رکھنے کے لئے ہے، 416 00:17:48,450 --> 00:17:51,139 اور میں تبصرہ چاہوں printf کے، یا، باہر تبصرہ 417 00:17:51,139 --> 00:17:52,930 اور معلوم ہے کیا آپ پرنٹنگ کیا جانا چاہئے. 418 00:17:52,930 --> 00:17:55,670 یہ اصل میں صرف کرنے کے لئے آپ کی اجازت دیتا ، کے ذریعے قدم چیزوں کو پرنٹ 419 00:17:55,670 --> 00:18:00,000 آپ کے ذریعے جا رہے ہیں کے طور پر، تاکہ، آپ کر سکتے ہیں وہ حقیقی وقت میں تبدیل کس طرح عمل، 420 00:18:00,000 --> 00:18:02,190 آپ کے پروگرام کے طور پر چل رہا ہے. 421 00:18:02,190 --> 00:18:04,390 >> اور یہ تھوڑا وقت لگتا ہے استعمال ہو رہی ہے کا سا. 422 00:18:04,390 --> 00:18:07,850 میں انتہائی صرف قسم کی سفارش کرے گا اس کے ساتھ ایک چھوٹا سا مایوس ہونے 423 00:18:07,850 --> 00:18:08,930 ابھی کے لئے. 424 00:18:08,930 --> 00:18:13,450 تم پر ایک گھنٹے خرچ کرتے ہیں اگلے ہفتے کس طرح GDB استعمال کرنے کے لئے سیکھنے، 425 00:18:13,450 --> 00:18:16,140 تم اپنے آپ کو بچا لے گا بعد میں اتنا وقت. 426 00:18:16,140 --> 00:18:18,750 اور لفظی. ہم بتا یہ لوگوں کے لئے ہر سال، 427 00:18:18,750 --> 00:18:23,890 میں نے لے لیا اور جب مجھے یاد ہے کلاس، مجھے لگتا ہے میں ٹھیک ہو جائے گا، کی طرح تھا. 428 00:18:23,890 --> 00:18:24,700 نمبر 429 00:18:24,700 --> 00:18:27,030 pset کے 6 پر آیا اور میں تھا کی طرح، میں تمہیں سیکھ رہا ہوں 430 00:18:27,030 --> 00:18:29,500 مجھے نہیں پتہ کیونکہ GDB کا استعمال کیسے کریں یہاں کیا ہو رہا ہے پتہ ہے کیا. 431 00:18:29,500 --> 00:18:32,940 >> آپ کا بہت وقت لے تو اگر چھوٹے پروگراموں پر اس کا استعمال 432 00:18:32,940 --> 00:18:35,697 آپ کو ہو جائے کرنے کے لئے جا رہے ہیں کہ کام کر رہے ہیں کی طرح، پر کام کر رہے 433 00:18:35,697 --> 00:18:37,530 کی طرح کچھ کے ذریعے اس طرح Visionare،. 434 00:18:37,530 --> 00:18:38,800 435 00:18:38,800 --> 00:18:42,850 آپ کو اضافی پریکٹس چاہتے ہیں تو یا، مجھے یقین ہے میں، چھوٹی گاڑی پروگراموں کے ساتھ آ سکتا 436 00:18:42,850 --> 00:18:45,300 اگر آپ چاہیں تو کے لئے آپ کو ڈیبگ. 437 00:18:45,300 --> 00:18:49,300 >> لیکن آپ نے ابھی کچھ وقت لگے تو حاصل کرنے کے لئے اس کی عادت، صرف اس کے ساتھ کے ارد گرد ادا، 438 00:18:49,300 --> 00:18:50,550 یہ واقعی اچھی طرح سے آپ کی خدمت کرے گا. 439 00:18:50,550 --> 00:18:52,591 اور یہ واقعی میں سے ایک ہے ان چیزوں کو کہ آپ کو صرف 440 00:18:52,591 --> 00:18:57,340 کوشش کرنا ہے، اور آپ کے ہاتھ گندی حاصل کیا تم واقعی یہ سمجھ سے پہلے، کے ساتھ. 441 00:18:57,340 --> 00:19:02,090 میں واقعی میں صرف ایک بار یہ سمجھ میں، اس کے ساتھ ڈیبگ چیزوں کے لئے تھا 442 00:19:02,090 --> 00:19:08,170 اور اس میں سے ایک خیال ہے بہت اچھے کہ کس طرح جلد کی بجائے بعد ڈیبگ. 443 00:19:08,170 --> 00:19:08,850 OK. 444 00:19:08,850 --> 00:19:09,625 ٹھنڈا. 445 00:19:09,625 --> 00:19:12,960 میں نے اس قسم کی طرح ہے جانتے ہیں GDB میں ایک حادثے کورس، 446 00:19:12,960 --> 00:19:16,400 اور میں ضرور ہو رہی ہے پر کام کریں گے ان میں بڑی اگلی بار دیکھنے کے لئے. 447 00:19:16,400 --> 00:19:17,590 448 00:19:17,590 --> 00:19:18,280 ٹھنڈا. 449 00:19:18,280 --> 00:19:20,390 >> لہذا، ہم واپس ہمارے پاورپوائنٹ پر جاتے ہیں. 450 00:19:20,390 --> 00:19:27,194 451 00:19:27,194 --> 00:19:28,110 یہ کام کرنے کے لئے جا رہی ہے؟ 452 00:19:28,110 --> 00:19:29,711 453 00:19:29,711 --> 00:19:30,210 Awh. 454 00:19:30,210 --> 00:19:31,101 جی ہاں. 455 00:19:31,101 --> 00:19:31,600 OK. 456 00:19:31,600 --> 00:19:35,480 لہذا، آپ نے کبھی میں سے کسی کی ضرورت ہے تو لوگ ایک بار پھر، فہرست موجود ہے. 457 00:19:35,480 --> 00:19:37,160 458 00:19:37,160 --> 00:19:40,830 تو بائنری تلاش، جس سے ہر کوئی ڈیوڈ کی عظیم تماشا یاد ہے 459 00:19:40,830 --> 00:19:42,259 نصف میں فون کتابوں ripping کے. 460 00:19:42,259 --> 00:19:44,050 میں واقعی میں نہیں ملتا اب فون کتابیں، 461 00:19:44,050 --> 00:19:46,530 اگر آپ ایسا کرتے ہیں جہاں کی طرح ہے کیونکہ ان دنوں فون کتابیں حاصل؟ 462 00:19:46,530 --> 00:19:48,220 میں واقعی نہیں جانتے. 463 00:19:48,220 --> 00:19:49,840 464 00:19:49,840 --> 00:19:50,590 بائنری تلاش. 465 00:19:50,590 --> 00:19:52,464 کسی کو یاد ہے کس طرح بائنری تلاش کے کام؟ 466 00:19:52,464 --> 00:19:54,380 467 00:19:54,380 --> 00:19:55,220 کوئی بھی؟ 468 00:19:55,220 --> 00:19:56,325 جی ہاں؟ 469 00:19:56,325 --> 00:19:58,283 5 اسپیکر: تم جب معلوم آپ جس کا نصف کو دیکھنے 470 00:19:58,283 --> 00:20:01,146 یہ اس بنا پر، میں ہو گی، اور دوسرے نصف میں سے چھٹکارا حاصل. 471 00:20:01,146 --> 00:20:01,896 >> اسپیکر 1 بالکل. 472 00:20:01,896 --> 00:20:06,290 لہذا، بائنری تلاش، اس میں سے a-- طرح ہے -ہم سے تقسیم اور فتح فون کرنے کی پسند. 473 00:20:06,290 --> 00:20:09,170 لہذا، آپ کیا کریں گے کیا ہے آپ درمیان میں نظر آئے گا 474 00:20:09,170 --> 00:20:11,990 اس سے ملتا ہے تو آپ کو نظر آئے گا کیا آپ کے لئے تلاش کر رہے ہیں. 475 00:20:11,990 --> 00:20:15,420 اگر ایسا نہیں ہوتا ہے اور، پھر آپ کو کرنے کی کوشش کریں پتہ لگا، اسے چھوڑ دیا جا رہا ہے 476 00:20:15,420 --> 00:20:16,450 نصف یا صحیح نصف. 477 00:20:16,450 --> 00:20:19,325 آپ تلاش کر رہے ہیں تو، یہ ہو سکتا ہے alphabetized تلاش ہے کہ کچھ پر، 478 00:20:19,325 --> 00:20:20,720 ارے تم، دیکھیں. 479 00:20:20,720 --> 00:20:22,750 یلیسن M سے پہلے آتا ہے؟ 480 00:20:22,750 --> 00:20:23,250 جی ہاں. 481 00:20:23,250 --> 00:20:25,030 لہذا، ہم جا رہے ہیں پہلے نصف میں نظر آتے ہیں. 482 00:20:25,030 --> 00:20:26,450 >> یا پھر یہ تعداد کے ساتھ کی طرح ہو سکتا. 483 00:20:26,450 --> 00:20:28,830 کچھ بھی ہے کہ آپ کر سکتے ہیں موازنہ، اس کے مطابق کیا جا سکتا ہے. 484 00:20:28,830 --> 00:20:29,920 485 00:20:29,920 --> 00:20:31,260 تم پر بائنری تلاش کا استعمال کرسکتے ہیں. 486 00:20:31,260 --> 00:20:32,340 487 00:20:32,340 --> 00:20:37,455 لہذا، کسی کو بھی یہ یاد رکھنا گراف یا یہ کیا ہے؟ 488 00:20:37,455 --> 00:20:39,520 یہ نام asymptotic پیچیدگی ہے. 489 00:20:39,520 --> 00:20:42,830 لہذا، اس گراف صرف کب تک بیان کرتا ہے کہ یہ 490 00:20:42,830 --> 00:20:46,230 کے طور پر ایک مسئلہ کو حل کی طرف لے جائے آپ چیزوں کی تعداد میں اضافہ 491 00:20:46,230 --> 00:20:47,090 کہ آپ استعمال کر رہے. 492 00:20:47,090 --> 00:20:51,260 >> لہذا، ہم لکیری وقت ہے جس میں ن، ہے. 493 00:20:51,260 --> 00:20:54,560 قدرے ہے جو دو N، تو بہتر، اب بھی سپر روزہ اگنے. 494 00:20:54,560 --> 00:20:58,360 اور پھر ہم جو ہے، لاگ ان کیا ہوگا اگر ہم بائنری تلاش کے بارے میں غور. 495 00:20:58,360 --> 00:21:03,630 ہم محسوس کرتے ہیں تو، آپ کا مسئلہ کے طور پر ، زیادہ اور زیادہ بڑا ہو جاتا ہے 496 00:21:03,630 --> 00:21:06,600 یہ آپ کو لے وقت اس کو حل کرنے واقعی میں اتنا اضافہ نہیں کرتا. 497 00:21:06,600 --> 00:21:09,010 اس مقابلے کی طرح ہے یہاں شروع میں. 498 00:21:09,010 --> 00:21:10,060 تم ٹھیک، کی طرح ہو. 499 00:21:10,060 --> 00:21:13,000 کچھ بھی یہاں واقعی نہیں کرتا معاملہ جس کو ہم استعمال سے ایک، 500 00:21:13,000 --> 00:21:16,220 لیکن آپ کو، ایک ملین کے لئے ایک ارب باہر حاصل. 501 00:21:16,220 --> 00:21:20,010 تم some-- --you're تلاش کرنے کی کوشش کر رہے ہیں ایک ٹیبل میں انجکشن تلاش کرنے کی کوشش. 502 00:21:20,010 --> 00:21:21,550 >> میں نے آپ کو اس مسئلہ کو چاہتے ہیں لگتا ہے کہ. 503 00:21:21,550 --> 00:21:25,850 آپ کو اس پیچیدگی، نہیں چاہتے لکیری کیونکہ سب کے لئے آپ 504 00:21:25,850 --> 00:21:30,049 آپ والا کے ذریعے تلاش کیا جائے جانتے ہر انفرادی انجکشن، گھاس کی بات یہ ہے، 505 00:21:30,049 --> 00:21:31,340 آپ کے انجکشن کے لئے تلاش کرنے کی کوشش کر. 506 00:21:31,340 --> 00:21:34,730 اور یہ کہ میری رائے میں بہت مزہ نہیں ہے. 507 00:21:34,730 --> 00:21:35,500 میں نے تیزی سے پسند ہے. 508 00:21:35,500 --> 00:21:36,620 مجھے موثر پسند. 509 00:21:36,620 --> 00:21:40,450 اور کے طور پر میہنتی طالب علموں آپ لوگ، آپ کو ہوشیار کام جانتے، ہیں 510 00:21:40,450 --> 00:21:43,010 نہیں مشکل قسم چیز، آپ کو کس طرح ان یلگوردمز قضاء. 511 00:21:43,010 --> 00:21:45,110 512 00:21:45,110 --> 00:21:47,910 >> لہذا، ہم چلنے کے لئے جا رہے ہیں صرف ایک فوری مثال کے ذریعے. 513 00:21:47,910 --> 00:21:51,090 میں تم لوگوں کو لگتا ہے کہ بائنری تلاش پر ہاتھ، 514 00:21:51,090 --> 00:21:54,352 لیکن کیس میں کسی کو ایک چھوٹی سی ہے فجی، اس کو مضبوط بنانے کے لئے چاہتے ہیں، 515 00:21:54,352 --> 00:21:56,310 ہم صرف جانے کے لئے جا رہے ہیں یہاں ایک مثال کے ذریعے. 516 00:21:56,310 --> 00:21:59,490 اگر ایسا ہے تو ہم دیکھ رہے ہیں سرنی سات پر مشتمل. 517 00:21:59,490 --> 00:22:00,540 518 00:22:00,540 --> 00:22:06,010 >> لہذا، ہم کرتے ہیں سب سے پہلی چیز ہے دائیں، درمیان میں نظر آتے ہیں؟ 519 00:22:06,010 --> 00:22:09,340 اور بھی آپ کو کوڈنگ جائے جا رہے ہیں صرف ایک سیکنڈ میں بائنری تلاش. 520 00:22:09,340 --> 00:22:11,310 لہذا، یہ مزہ ہونے جا رہا ہے. 521 00:22:11,310 --> 00:22:13,710 تو ہم میں دیکھیں درمیانی تھوڑا arrays کے 3. 522 00:22:13,710 --> 00:22:15,501 3 7 کے برابر ہو جاتا ہے؟ 523 00:22:15,501 --> 00:22:16,000 ایسا نہیں ہوتا. 524 00:22:16,000 --> 00:22:18,670 525 00:22:18,670 --> 00:22:19,550 یہ چھ ہے. 526 00:22:19,550 --> 00:22:21,480 لہذا، کے مقابلے میں اس سے بھی کم ہے یا سات سے بڑھ کر؟ 527 00:22:21,480 --> 00:22:23,080 528 00:22:23,080 --> 00:22:23,960 سے بھی کم. 529 00:22:23,960 --> 00:22:24,570 جی ہاں. 530 00:22:24,570 --> 00:22:25,170 اچھا کام لوگ. 531 00:22:25,170 --> 00:22:25,569 532 00:22:25,569 --> 00:22:27,360 مجھے چاہئے کی طرح محسوس کرتا ہوں کینڈی وجہ ہے کہ میں 533 00:22:27,360 --> 00:22:29,460 گز میں اسے باہر پھینک کرنا چاہتے ہیں. 534 00:22:29,460 --> 00:22:30,270 یہ میں نے اگلے ہفتے کیا کرنے جا رہا ہوں. 535 00:22:30,270 --> 00:22:31,436 یہ تیز تم لوگوں کو رکھیں گے. 536 00:22:31,436 --> 00:22:32,560 537 00:22:32,560 --> 00:22:34,690 >> لہذا، ہم نے اس دور پھینک پہلی ششماہی، حق؟ 538 00:22:34,690 --> 00:22:35,670 اس سے بھی کم تھی. 539 00:22:35,670 --> 00:22:39,325 ہم کہ سب کچھ جانتے ہیں کہ بائیں ہاتھ کی طرف 540 00:22:39,325 --> 00:22:41,700 سے بھی کم ہو رہا ہے ہم اصل میں کے لئے تلاش کر رہے ہیں. 541 00:22:41,700 --> 00:22:43,491 لہذا، کوئی ضرورت کی کیا بات ہے اس پر توجہ دینا. 542 00:22:43,491 --> 00:22:45,120 بس اس کے بارے میں بھول جاؤ. 543 00:22:45,120 --> 00:22:48,720 تو، اب ہم اپنے دائیں ہاتھ کی طرف پر نظر ڈالیں، اور ہم، وہاں مشرق میں دیکھو 544 00:22:48,720 --> 00:22:50,510 اور اب یہ نو ہے. 545 00:22:50,510 --> 00:22:55,510 لہذا، 9 is-- --Everyone؟ 546 00:22:55,510 --> 00:22:57,470 ہم ہیں کیا اس سے بڑا حق، کے لئے تلاش؟ 547 00:22:57,470 --> 00:22:59,860 لہذا، ہم پھینک کرنے جا رہے ہیں درست کرنے کے لئے سب کچھ دور. 548 00:22:59,860 --> 00:23:00,970 549 00:23:00,970 --> 00:23:01,940 اس طرح. 550 00:23:01,940 --> 00:23:03,700 اب، ہم سب ایک ہے کے ساتھ چھوڑ رہے. 551 00:23:03,700 --> 00:23:07,760 تو ہم چیک، اس میں سے ایک ہے کیا ہم کے لئے تلاش کر رہے ہیں؟ یہ ہے. 552 00:23:07,760 --> 00:23:08,970 ہم جو ہم چاہتے تھے پایا. 553 00:23:08,970 --> 00:23:10,440 554 00:23:10,440 --> 00:23:11,690 تو ہم کیا کر رہے ہیں. 555 00:23:11,690 --> 00:23:12,550 Bilinear تلاش. 556 00:23:12,550 --> 00:23:15,740 >> اور آپ کو، ہم محسوس کریں تو وہاں سات آدانوں پڑا. 557 00:23:15,740 --> 00:23:24,320 یہ صرف تین بار کی طرح ہم سے لے لیا لیکن آپ کو ایک بلین کی طرح کر رہے ہیں، 558 00:23:24,320 --> 00:23:28,190 تم لوگ کتنے قدم یہ گا جانتے ہم چار ارب چیزوں تھا تو لے؟ 559 00:23:28,190 --> 00:23:29,940 560 00:23:29,940 --> 00:23:30,455 کوئی اندازہ؟ 561 00:23:30,455 --> 00:23:32,286 562 00:23:32,286 --> 00:23:33,960 یہ 32 ہے. 563 00:23:33,960 --> 00:23:37,110 کچھ تلاش کرنے کے لئے 32 اقدامات ایک چار ارب میں 564 00:23:37,110 --> 00:23:39,650 کیونکہ دو کے اختیارات کا عنصر سرنی. 565 00:23:39,650 --> 00:23:43,550 تو دو، 32 کرنے کے لئے ہے چار ارب کے لئے ہے. 566 00:23:43,550 --> 00:23:50,430 >> اتنی خوبصورت پاگل کس طرح آپ اب بھی اندر ہو اقدامات کے ایک کافی کم تعداد 567 00:23:50,430 --> 00:23:52,650 میں کچھ تلاش کرنے کے لئے چار ارب عناصر. 568 00:23:52,650 --> 00:23:55,730 اس بات پر تو کیا، ہم ہیں اس کوڈ کے لئے جا 569 00:23:55,730 --> 00:23:58,950 تاکہ آپ لوگ اصل میں یہ کر سکتے ہیں قسم یہ کس طرح کام کرتا. 570 00:23:58,950 --> 00:24:01,520 ٹھیک ہے، آپ لوگ کوڈ سکتا ہے تاکہ. 571 00:24:01,520 --> 00:24:04,100 میں تم لوگوں کو مطلع کرنے کے لئے جا رہا ہوں ایک تھوڑا سا کے لئے بات. 572 00:24:04,100 --> 00:24:07,970 جو ہے، آپ کے ارد گرد لوگوں کو معلوم کرنے کے لئے حاصل کیا کسی کے آخری حصے سے چاہتے تھے. 573 00:24:07,970 --> 00:24:10,280 >> تو اگر آپ کے ارد گرد لوگوں کو معلوم کرنے کے لئے حاصل. 574 00:24:10,280 --> 00:24:11,305 تھوڑا سا کے لئے بات کریں. 575 00:24:11,305 --> 00:24:12,580 576 00:24:12,580 --> 00:24:15,730 اور تمام میں تم سے چاہتا ہوں لوگ صحیح اب صرف ہے 577 00:24:15,730 --> 00:24:17,575 pseudocode کی ایک خاکہ پیدا کرنے کی کوشش. 578 00:24:17,575 --> 00:24:18,075 ٹھیک ہے؟ 579 00:24:18,075 --> 00:24:20,825 580 00:24:20,825 --> 00:24:21,325 واہ. 581 00:24:21,325 --> 00:24:23,320 582 00:24:23,320 --> 00:24:29,520 میں تم لوگوں سے چاہتے ہیں سب آپ کر رہے ہیں ہے صرف اس کیس میں جبکہ بھرنے جا. 583 00:24:29,520 --> 00:24:32,170 تو میں نے ان کے بالائی مقرر کیا ہے اور کم حد ہے جس 584 00:24:32,170 --> 00:24:35,250 آغاز کی نمائندگی ہمارے صف کے اور آخر. 585 00:24:35,250 --> 00:24:40,440 اور آپ اصل میں کرنے کے لئے جا رہے ہیں لوپ کے ذریعے اور یہ اعداد و شمار 586 00:24:40,440 --> 00:24:42,470 کیا ہم اس دیر لوپ کے اندر کیا کر رہے ہیں. 587 00:24:42,470 --> 00:24:45,810 >> آپ باہر لگا سکتے ہیں تو تو میں پڑے مقدمات ہیں کیا وہاں ایک اشارہ 588 00:24:45,810 --> 00:24:46,640 کہ ہم یہاں ہے؟ 589 00:24:46,640 --> 00:24:48,100 590 00:24:48,100 --> 00:24:51,560 آپ کو معلوم کرنا چاہتے ہیں تو مقدمات، ہم ان کے pseudocode گے 591 00:24:51,560 --> 00:24:53,350 اور پھر ہم اصل میں ان کے کوڈ دیں گے. 592 00:24:53,350 --> 00:24:55,330 اور یہ ہونے جا رہا ہے، میں نے امید ہے کہ یہ کروں گا، لگتا ہے کہ 593 00:24:55,330 --> 00:24:56,788 آپ توقع سے تھوڑا آسان ہو جائے. 594 00:24:56,788 --> 00:24:57,554 595 00:24:57,554 --> 00:25:00,220 ، یہ اتنا کوڈ نہیں ہے کیونکہ اصل میں، جو واقعی ٹھنڈا ہے. 596 00:25:00,220 --> 00:25:34,110 597 00:25:34,110 --> 00:25:35,018 >> MM-HM؟ 598 00:25:35,018 --> 00:25:35,893 >> طالب علم: [اشراوی]؟ 599 00:25:35,893 --> 00:25:36,984 600 00:25:36,984 --> 00:25:37,650 انسٹرکٹر: جی ہاں. 601 00:25:37,650 --> 00:25:38,595 کچھ تھا وسط میں تلاش کرنے کے لئے. 602 00:25:38,595 --> 00:25:39,552 >> طالب علم: تو ہم اس کو استعمال کر سکتے ہیں. 603 00:25:39,552 --> 00:25:39,770 OK. 604 00:25:39,770 --> 00:25:40,603 >> انسٹرکٹر: کامل. 605 00:25:40,603 --> 00:25:42,950 تو ہے کہ ہم کیا کرنے کی ضرورت ہے پہلی چیز ہے. 606 00:25:42,950 --> 00:25:44,330 تاکہ مشرق تلاش. 607 00:25:44,330 --> 00:25:45,415 608 00:25:45,415 --> 00:25:45,915 گریٹ. 609 00:25:45,915 --> 00:25:47,770 610 00:25:47,770 --> 00:25:55,010 تو تم میں سے ایک خیال ہے کہ ہم کس طرح طاقت ہو اصل کوڈ کے ساتھ وسط جائے؟ 611 00:25:55,010 --> 00:25:55,980 >> طالب علم: جی ہاں. 612 00:25:55,980 --> 00:25:57,000 2 سے زیادہ ن؟ 613 00:25:57,000 --> 00:25:58,500 614 00:25:58,500 --> 00:25:59,500 انسٹرکٹر: تو (ن) 2 سے زیادہ. 615 00:25:59,500 --> 00:26:05,170 تاکہ یاد رکھنے کی ایک بات یہ ہے کہ آپ کے اوپری اور نچلے حد کو تبدیل. 616 00:26:05,170 --> 00:26:08,110 ہم حصہ constricting رہو صف کے ہم کے لئے تلاش کر رہے ہیں. 617 00:26:08,110 --> 00:26:11,970 تو (ن) 2 سے زیادہ صرف کام کریں گے پہلی چیز جو ہم کرتے ہیں. 618 00:26:11,970 --> 00:26:17,810 لہذا اکاؤنٹ میں اوپر اور نیچے لے جا، ہم کس طرح ہے کہ درمیانی عنصر حاصل ہو سکتا ہے؟ 619 00:26:17,810 --> 00:26:20,640 ہم درمیان چاہتے ہیں کیونکہ اوپر اور نیچے، دائیں کے درمیان؟ 620 00:26:20,640 --> 00:26:21,730 621 00:26:21,730 --> 00:26:22,494 MM-HM؟ 622 00:26:22,494 --> 00:26:23,369 >> طالب علم: [اشراوی]. 623 00:26:23,369 --> 00:26:26,170 624 00:26:26,170 --> 00:26:28,080 >> انسٹرکٹر: تو ہم نے کچھ متوسط ​​ہے. 625 00:26:28,080 --> 00:26:32,730 اور یہ بالائی علاوہ 2 سے زائد کم ہو لیں گے. 626 00:26:32,730 --> 00:26:34,740 627 00:26:34,740 --> 00:26:35,690 بہت اچھے. 628 00:26:35,690 --> 00:26:36,570 ہم وہاں جا رہے. 629 00:26:36,570 --> 00:26:37,280 ایک ہی لائن میں نیچے. 630 00:26:37,280 --> 00:26:38,560 تم لوگوں کو آپ کے راستے پر ہیں. 631 00:26:38,560 --> 00:26:41,400 تو اب ہم ہمارے لئے ہے کہ مڈل، جو ہم کرنا چاہتے ہیں؟ 632 00:26:41,400 --> 00:26:45,050 633 00:26:45,050 --> 00:26:45,900 صرف عام طور پر. 634 00:26:45,900 --> 00:26:47,734 آپ اس کے کوڈ کی ضرورت نہیں ہے. 635 00:26:47,734 --> 00:26:48,335 جی ہاں. 636 00:26:48,335 --> 00:26:49,210 طالب علم: [اشراوی]؟ 637 00:26:49,210 --> 00:27:00,310 638 00:27:00,310 --> 00:27:10,310 انسٹرکٹر: تو یہ ہے کے علاوہ آپ ہیں کیونکہ دونوں کے درمیان اوسط تلاش کرنے 639 00:27:10,310 --> 00:27:10,810 ان میں. 640 00:27:10,810 --> 00:27:11,890 641 00:27:11,890 --> 00:27:17,370 تو کیا تم اس قسم کی ان میں سے لگتا ہے کہ اگر اطراف سے میں اضافہ کا، 642 00:27:17,370 --> 00:27:21,640 آپ سے رجوع کے طور پر اس کے بارے میں سوچنا مڈل، آپ کو اس طرح چاہتے ہیں. 643 00:27:21,640 --> 00:27:27,150 لہذا اگر آپ کے دونوں کناروں پر تھے مڈل، اور ہم نے 5 اور 7 کی طرح ہے. 644 00:27:27,150 --> 00:27:31,440 کیا آپ ان کے ساتھ شامل کرتے ہیں تو 12 ملے، آپ کو 2 کی طرف سے تقسیم، 6 ہے. 645 00:27:31,440 --> 00:27:33,726 >> کبھی کبھی یہ مشکل ہے کہ کام کرتا ہے کیوں کی وضاحت، 646 00:27:33,726 --> 00:27:35,600 لیکن آپ کے ذریعے کام کرتا ہے تو ایک مثال کبھی کبھی، 647 00:27:35,600 --> 00:27:37,962 یہ آپ کو تو پتہ لگا مدد کروں گا یہ پلس یا مائنس ہونا چاہئے. 648 00:27:37,962 --> 00:27:38,846 جی ہاں. 649 00:27:38,846 --> 00:27:40,830 >> طالب علم: [اشراوی] جو بالکل وسط میں 650 00:27:40,830 --> 00:27:43,950 وہ جہاں ایک کیس تھا تو چھوٹے نمبروں کی ایک بہت کچھ ہے 651 00:27:43,950 --> 00:27:45,860 اور ایک بڑی تعداد کی طرح؟ 652 00:27:45,860 --> 00:27:49,750 >> انسٹرکٹر: تو آپ سب کی ضرورت صف کے وسط میں ہے. 653 00:27:49,750 --> 00:27:53,010 اگر ایسا ہے تو آپ کو چھوٹے تعداد کے ایک گروپ تھا اور پھر ایک واقعی بڑی تعداد 654 00:27:53,010 --> 00:27:54,799 آخر میں، اس سے کوئی فرق نہیں پڑتا. 655 00:27:54,799 --> 00:27:56,840 یہ سب معاملات ہیں ہے وہ، آپ کو صرف حل کر رہے ہیں 656 00:27:56,840 --> 00:27:59,339 کے وسط میں دیکھنا چاہتا ہوں سرنی آپ کو اب بھی ہو کیونکہ 657 00:27:59,339 --> 00:28:00,700 نصف میں آپ کا مسئلہ slicing کی. 658 00:28:00,700 --> 00:28:03,020 659 00:28:03,020 --> 00:28:03,680 ٹھنڈا. 660 00:28:03,680 --> 00:28:06,430 تو اب ہم ہے کہ مڈل، ہم اگلے کیا کروں؟ 661 00:28:06,430 --> 00:28:07,150 >> طالب علم: کا موازنہ کریں. 662 00:28:07,150 --> 00:28:08,150 انسٹرکٹر: موازنہ. 663 00:28:08,150 --> 00:28:11,670 value_wanted لئے اتنا مڈل موازنہ. 664 00:28:11,670 --> 00:28:14,300 665 00:28:14,300 --> 00:28:15,160 ٹھنڈا. 666 00:28:15,160 --> 00:28:17,950 تو کیا تم ہمارے پاس یہاں دیکھ ہم یہاں چاہتے ہیں اس کی قیمت. 667 00:28:17,950 --> 00:28:22,012 668 00:28:22,012 --> 00:28:23,095 یہ ایک صف ہے یاد رکھیں. 669 00:28:23,095 --> 00:28:24,100 670 00:28:24,100 --> 00:28:26,970 تاکہ مشرق انڈیکس سے مراد. 671 00:28:26,970 --> 00:28:29,785 تو ہم مشرق کی اقدار کیا کرنا چاہتے ہیں. 672 00:28:29,785 --> 00:28:32,380 673 00:28:32,380 --> 00:28:35,650 اگر آپ چاہتے ہیں یہ مت بھولو ، ڈبل برابر کا موازنہ کرنے. 674 00:28:35,650 --> 00:28:38,250 آپ واحد تم برابر صرف اسے میں reassign کرنے جا، 675 00:28:38,250 --> 00:28:41,090 اور پھر، کورس کی، یہ بات ہے آپ چاہتے قدر ہونے جا رہا. 676 00:28:41,090 --> 00:28:42,300 تو ہے کہ ایسا نہ کرو. 677 00:28:42,300 --> 00:28:44,350 >> تو ہم تو دیکھنے کے لئے جا رہے ہیں وسط میں اقدار 678 00:28:44,350 --> 00:28:46,460 ہم چاہتے ہیں قیمت کے برابر ہے. 679 00:28:46,460 --> 00:28:47,749 680 00:28:47,749 --> 00:28:48,790 آپ کے منحنی خطوط وحدانی میں مت بھولنا. 681 00:28:48,790 --> 00:28:50,520 682 00:28:50,520 --> 00:28:52,235 ڈراپ باکس دور جانا چاہئے. 683 00:28:52,235 --> 00:28:54,140 684 00:28:54,140 --> 00:28:56,200 تو ہم نے اس معاملے میں کیا کرتے ہیں؟ 685 00:28:56,200 --> 00:28:59,360 یہ ہم کو واپس کرنا چاہتے ہیں کیا ہے تو کیا ہوگا؟ 686 00:28:59,360 --> 00:29:01,510 687 00:29:01,510 --> 00:29:02,626 ہم کہنے کی کوشش کر رہے ہیں. 688 00:29:02,626 --> 00:29:03,440 >> طالب علم: آف پرنٹ. 689 00:29:03,440 --> 00:29:05,314 >> انسٹرکٹر: ٹھیک ہے، ہم بند پرنٹ کرنے کے لئے نہیں کرنا چاہتا. 690 00:29:05,314 --> 00:29:08,220 تو یہ یہاں ایک bool ہے، ہم تو صحیح یا غلط واپس کرنا چاہتے ہیں. 691 00:29:08,220 --> 00:29:12,280 ہم اس تعداد ہے، کہہ رہے ہیں ایک [؟ RRA؟ ؟] یہ ہے اگر ایسا ہے تو، 692 00:29:12,280 --> 00:29:13,788 ہم صرف یہ سچ واپس. 693 00:29:13,788 --> 00:29:16,780 694 00:29:16,780 --> 00:29:17,760 میں سچ جادو کر سکتے ہیں تو. 695 00:29:17,760 --> 00:29:18,830 696 00:29:18,830 --> 00:29:20,805 >> طالب علم: آپ کیوں صفر کو واپس نہیں کرے گا؟ 697 00:29:20,805 --> 00:29:22,930 انسٹرکٹر: آپ کر سکتے تھے تو اگر تم چاہتے تھے صفر واپس. 698 00:29:22,930 --> 00:29:26,780 لیکن اس صورت میں ہے کیونکہ ہمارے تقریب ایک bool لوٹتا، 699 00:29:26,780 --> 00:29:28,962 ہم بھی صحیح یا غلط واپس کرنے کی ضرورت. 700 00:29:28,962 --> 00:29:30,920 طالب علم: آپ کب ہو ، بولین اظہار کرتے ہوئے کہا کہ 701 00:29:30,920 --> 00:29:33,450 آپ اسے جھوٹے کے برابر مقرر کر سکتے ہیں؟ 702 00:29:33,450 --> 00:29:39,860 میں کہنا چاہتا ہوں کہ اگر، تو اس شرط کی طرح اوپری ہے جھوٹی برابر کی طرح، نہیں پورا کیا جاتا. 703 00:29:39,860 --> 00:29:42,332 صرف اگر آپ کو یہ سمجھ جائے گا دوسری طرف جھوٹی ڈال دیا؟ 704 00:29:42,332 --> 00:29:43,040 انسٹرکٹر: جی ہاں. 705 00:29:43,040 --> 00:29:44,820 تو اصل میں آپ کو ہو تو کبھی کچھ کر 706 00:29:44,820 --> 00:29:49,600 جیسے اوپری ہے یا کم ہے، یہ سچ ہے یا جھوٹ لوٹتا 707 00:29:49,600 --> 00:29:53,850 اور یہ اصل میں برے انداز ہے کا کہنا ہے کہ برابر ہے صحیح یا برابر برابر 708 00:29:53,850 --> 00:29:54,840 جھوٹی برابر. 709 00:29:54,840 --> 00:30:00,210 تم اس نتیجہ کو استعمال کرنا چاہتے آپ چیک کے طور پر خود کے طور پر. 710 00:30:00,210 --> 00:30:04,720 711 00:30:04,720 --> 00:30:05,860 میں چاہتا تھا نہیں کیا. 712 00:30:05,860 --> 00:30:08,150 713 00:30:08,150 --> 00:30:09,240 یہی ہے جو میں چاہتا تھا. 714 00:30:09,240 --> 00:30:13,205 پوچھ رہے ہیں کہ آپ کی صورت میں کچھ کے بارے میں طرح C میں اس کو بچانے کے. 715 00:30:13,205 --> 00:30:16,320 716 00:30:16,320 --> 00:30:25,150 >> تو ہم نے int اہم (باطل) ہے تو اور کچھ اس طرح. 717 00:30:25,150 --> 00:30:31,922 بالائی اور اگر آپ کے پاس ہے اگر آپ کر رہے ہیں اور کچھ ان پٹ کے 718 00:30:31,922 --> 00:30:33,630 آپ کر سکتے ہیں تو اس سے پوچھ کچھ اس طرح؟ 719 00:30:33,630 --> 00:30:35,010 720 00:30:35,010 --> 00:30:35,679 ٹھیک ہے نا؟ 721 00:30:35,679 --> 00:30:37,470 طالب علم: میں کوشش کر رہا تھا یہ [اشراوی] کو ایسا کرنے کی. 722 00:30:37,470 --> 00:30:38,450 it's-- کیونکہ اگر 723 00:30:38,450 --> 00:30:39,200 انسٹرکٹر: حق. 724 00:30:39,200 --> 00:30:41,197 لہذا آپ کو اس کا حق، جھوٹے بننا چاہتا ہوں؟ 725 00:30:41,197 --> 00:30:41,780 طالب علم: جی ہاں. 726 00:30:41,780 --> 00:30:45,960 انسٹرکٹر: اس معاملے میں تو کیا تم یہ سچ نہیں ہے اگر اس پر عمل کرنا چاہتے ہیں. 727 00:30:45,960 --> 00:30:50,510 تو تم وہاں کیا کر ٹھنڈی چیز یہ ہے. 728 00:30:50,510 --> 00:30:52,900 729 00:30:52,900 --> 00:30:55,650 لہذا فجائیہ یاد نقطہ چیزوں کی نفی؟ 730 00:30:55,650 --> 00:30:58,270 یہ [اشراوی] نہیں کا مطلب ہے کا کہنا ہے کہ. 731 00:30:58,270 --> 00:31:03,590 ہم صرف کی طرف دیکھو تو اگر یہاں اس حصے، تم ہوتا 732 00:31:03,590 --> 00:31:05,740 کہ تشخیص کہنا جھوٹی آپ یہ کرنا چاہتے ہیں کے طور پر. 733 00:31:05,740 --> 00:31:06,790 734 00:31:06,790 --> 00:31:09,880 جھوٹے نہیں جو سچ ہے اس کو پھانسی دیں گے مطلب ہے. 735 00:31:09,880 --> 00:31:11,037 کہ عقل مندی ہے؟ 736 00:31:11,037 --> 00:31:11,620 طالب علم: جی ہاں. 737 00:31:11,620 --> 00:31:12,453 انسٹرکٹر: بہت اچھے. 738 00:31:12,453 --> 00:31:13,800 739 00:31:13,800 --> 00:31:14,300 OK. 740 00:31:14,300 --> 00:31:16,330 تو ہم صرف واپس کر سکتے اس معاملے میں سچ. 741 00:31:16,330 --> 00:31:20,357 تو اب ہم دیگر دو ہے اس معاملے میں مقدمات. 742 00:31:20,357 --> 00:31:21,565 ہمارے دو دوسرے معاملات کیا ہیں؟ 743 00:31:21,565 --> 00:31:31,610 744 00:31:31,610 --> 00:31:32,900 چلو صرف اسے اس طرح کرتے ہیں. 745 00:31:32,900 --> 00:31:40,660 تو چلو کسی اور کے ساتھ شروع کرتے ہیں اگر مشرق میں اقدار 746 00:31:40,660 --> 00:31:43,230 ہم چاہتے ہیں کی قیمت سے کم ہے. 747 00:31:43,230 --> 00:31:47,200 748 00:31:47,200 --> 00:31:52,020 تاکہ وسط میں ہماری قیمت کم ہے ہم کے لئے تلاش کر رہے ہیں کہ قیمت سے. 749 00:31:52,020 --> 00:31:53,765 750 00:31:53,765 --> 00:31:56,720 >> تو جانے جس سے آپ کو کیا کرنا ہم کو اپ ڈیٹ کرنا چاہتے ہیں لگتا ہے؟ 751 00:31:56,720 --> 00:31:57,870 752 00:31:57,870 --> 00:31:58,780 اوپری یا کم؟ 753 00:31:58,780 --> 00:32:01,440 754 00:32:01,440 --> 00:32:01,940 اپر؟ 755 00:32:01,940 --> 00:32:03,230 756 00:32:03,230 --> 00:32:06,470 صف کے پس جس کی طرف ہم دیکھ رکھا جائے جا رہے ہیں؟ 757 00:32:06,470 --> 00:32:07,500 >> طالب علم: زیریں. 758 00:32:07,500 --> 00:32:09,750 >> انسٹرکٹر: ہم جا رہے ہیں بائیں پر لگ جائے. 759 00:32:09,750 --> 00:32:11,120 کم قیمت کم ہے تو اگر نہیں تو. 760 00:32:11,120 --> 00:32:14,730 یہاں آپ کی درمیانی قیمت اتنی ہم کیا چاہتے ہیں سے بھی کم ہے. 761 00:32:14,730 --> 00:32:17,202 تو ہم لے جانا چاہتا ہوں ہمارے صف کے دائیں جانب. 762 00:32:17,202 --> 00:32:18,910 تو ہم کرنے جا رہے ہیں ہماری کم جانے کو اپ ڈیٹ. 763 00:32:18,910 --> 00:32:20,210 764 00:32:20,210 --> 00:32:23,020 تو ہم ہمارے زیریں میں reassign دونگا. 765 00:32:23,020 --> 00:32:25,221 اور آپ کو کم ہونا چاہئے کیا لگتا ہے؟ 766 00:32:25,221 --> 00:32:26,304 طالب علم: درمیانی قیمت؟ 767 00:32:26,304 --> 00:32:27,446 768 00:32:27,446 --> 00:32:28,820 انسٹرکٹر: تو مڈل value-- 769 00:32:28,820 --> 00:32:30,136 طالب علم: پلس 1. 770 00:32:30,136 --> 00:32:31,010 انسٹرکٹر: --plus 1. 771 00:32:31,010 --> 00:32:32,300 772 00:32:32,300 --> 00:32:34,380 کسی کو کیوں مجھے بتا سکتے ہو ہم نے اس کے علاوہ 1 ہے؟ 773 00:32:34,380 --> 00:32:35,730 >> طالب علم: [؟ کوئی قیمت نہیں؟] اس سے زیادہ برابر ہے. 774 00:32:35,730 --> 00:32:36,120 >> انسٹرکٹر: حق. 775 00:32:36,120 --> 00:32:38,661 ہم پہلے ہی جانتے ہیں کہ وجہ ہمارے درمیانی قیمت کے برابر نہیں ہے 776 00:32:38,661 --> 00:32:42,750 یہ اور ہم اس کو خارج کرنا چاہتے ہیں بعد کے تمام تلاش سے. 777 00:32:42,750 --> 00:32:46,360 آپ اس کے علاوہ 1، یہ بھول جاتے ہیں تو غیر معینہ مدت تک لوپ کو پسند آئے گا. 778 00:32:46,360 --> 00:32:49,620 اور آپ کو صرف ایک میں پھنس جائے گی لامحدود لوپ اور پھر آپ segfault کر لیں گے 779 00:32:49,620 --> 00:32:50,370 اور چیزوں کو برا جانا. 780 00:32:50,370 --> 00:32:54,780 تو ہمیشہ تم نہیں ہو کہ بات کو یقینی بنانے کے قدر شامل ہے کہ آپ کو صرف 781 00:32:54,780 --> 00:32:55,380 کی طرف دیکھا. 782 00:32:55,380 --> 00:32:58,530 تو ہم نے ایک پلس 1 کے ساتھ اس کی دیکھ بھال. 783 00:32:58,530 --> 00:33:04,840 >> تو اب ہم ہماری آخری شرط ہے حفاظت خاطر جو ہمیشہ مجھے 784 00:33:04,840 --> 00:33:12,664 آپ کو کم قیمت کا تو کوئی اور، یہاں چیک کر سکتے ہیں درمیانی قیمت سے زیادہ ہے 785 00:33:12,664 --> 00:33:13,163 ہم چاہتے ہیں. 786 00:33:13,163 --> 00:33:16,260 787 00:33:16,260 --> 00:33:20,230 یہی ہے جو ہم چاہتے ہیں کہ اس کا مطلب بائیں ہاتھ سے نصف. 788 00:33:20,230 --> 00:33:21,350 789 00:33:21,350 --> 00:33:23,260 لہذا جس سے ایک ہم کو اپ ڈیٹ کرنے کے لئے جا رہے ہیں؟ 790 00:33:23,260 --> 00:33:23,760 اپر. 791 00:33:23,760 --> 00:33:25,470 792 00:33:25,470 --> 00:33:26,970 اور برابر کرنے کی جا رہی اس میں سے ایک کیا ہے؟ 793 00:33:26,970 --> 00:33:31,630 794 00:33:31,630 --> 00:33:33,690 مشرق مائنس 1، کیونکہ کورس کے، ہم چاہتے ہیں 795 00:33:33,690 --> 00:33:38,370 ہم نہیں ہیں اس بات کو یقینی بنانے کے لئے پھر اس درمیانی قیمت کی طرف دیکھ. 796 00:33:38,370 --> 00:33:41,830 797 00:33:41,830 --> 00:33:45,110 اور پھر ہم اس کے ہیں. 798 00:33:45,110 --> 00:33:45,610 یہ بات ہے. 799 00:33:45,610 --> 00:33:46,820 کہ تمام بائنری تلاش ہے. 800 00:33:46,820 --> 00:33:48,190 یہ درست ہے، اتنا برا نہیں ہے؟ 801 00:33:48,190 --> 00:33:51,590 اس کی 10 لائنوں کی طرح ہے سفید جگہ کے ساتھ کوڈ. 802 00:33:51,590 --> 00:33:57,510 لہذا بہت طاقتور، بہت مفید، تم کروگے آپ بعد میں psets میں سے ایک میں اس کا استعمال کیا ہو. 803 00:33:57,510 --> 00:33:59,360 شاید نہیں اس ایک، لیکن بعد میں. 804 00:33:59,360 --> 00:34:00,670 تو یہ جاننے کے. 805 00:34:00,670 --> 00:34:01,510 اس سے محبت. 806 00:34:01,510 --> 00:34:02,980 یہ اچھی طرح سے آپ کا علاج کریں گے. 807 00:34:02,980 --> 00:34:05,370 تو کسی کو کسی بھی ہے بائنری تلاش پر سوال؟ 808 00:34:05,370 --> 00:34:06,196 جی ہاں. 809 00:34:06,196 --> 00:34:09,840 >> طالب علم: یہ کوئی بات ہے آپ ن بھی عجیب ہے کہ آیا؟ 810 00:34:09,840 --> 00:34:10,750 >> انسٹرکٹر: نمبر 811 00:34:10,750 --> 00:34:18,150 ہم جیسے مڈل لئے ڈال کیونکہ ایک int، یہ صرف یہ تراش گے. 812 00:34:18,150 --> 00:34:21,600 یہ ایک عدد صحیح رہنا اور گا تو یہ ہو گا بالآخر سب کچھ کے ذریعے حل. 813 00:34:21,600 --> 00:34:23,909 تو آپ کو اس کے بارے میں فکر کرنے کی ضرورت نہیں. 814 00:34:23,909 --> 00:34:24,580 اچھا ہر کوئی؟ 815 00:34:24,580 --> 00:34:25,659 816 00:34:25,659 --> 00:34:26,850 بہت اچھے. 817 00:34:26,850 --> 00:34:27,919 ٹھنڈا. 818 00:34:27,919 --> 00:34:30,836 لہذا، تم لوگ اس کو مل گیا. 819 00:34:30,836 --> 00:34:33,380 820 00:34:33,380 --> 00:34:33,880 سلائیڈ شو. 821 00:34:33,880 --> 00:34:35,719 822 00:34:35,719 --> 00:34:43,270 ہم کے بارے میں بات کر رہے تھے کے طور پر تو، میں جانتا ہوں ڈیوڈ پیچیدگی runtimes اور ذکر کیا. 823 00:34:43,270 --> 00:34:44,420 824 00:34:44,420 --> 00:34:50,340 >> تو بہترین صورت میں، یہ صرف ہے ہم مسلسل وقت فون جس میں سے ایک،. 825 00:34:50,340 --> 00:34:51,909 کہ ہو سکتا ہے کہ کیوں کوئی مجھے بتا سکتے ہو؟ 826 00:34:51,909 --> 00:34:52,969 827 00:34:52,969 --> 00:34:55,800 اس منظر نامے کے کس قسم کی سفید انقلاب گے؟ 828 00:34:55,800 --> 00:34:58,260 829 00:34:58,260 --> 00:34:58,760 MM-HM. 830 00:34:58,760 --> 00:34:59,926 >> طالب علم: [اشراوی] first-- 831 00:34:59,926 --> 00:35:00,789 832 00:35:00,789 --> 00:35:03,830 انسٹرکٹر: درمیانے ہونے کی وجہ تو ہم کرنے کے لئے آیا ہے کہ پہلے عنصر، حق؟ 833 00:35:03,830 --> 00:35:08,167 تو ایک کی ایک صف یا جو کچھ بھی ہم صرف کے لئے تلاش کر رہے ہیں 834 00:35:08,167 --> 00:35:09,750 وسط میں ذائقہ DAB ہونا ہوتا. 835 00:35:09,750 --> 00:35:11,190 836 00:35:11,190 --> 00:35:13,380 تو ہے کہ ہمارے سب سے بہترین بات ہے. 837 00:35:13,380 --> 00:35:17,540 آپ نے شاید، حقیقی مسائل میں ملتا ہے کہ اکثر [اشراوی] تک پہنچنے کے لئے جا. 838 00:35:17,540 --> 00:35:18,667 839 00:35:18,667 --> 00:35:19,750 کیا ہمارے بدترین کیس کے بارے میں؟ 840 00:35:19,750 --> 00:35:21,270 ہمارے بدترین صورت لاگ ان ن ہے. 841 00:35:21,270 --> 00:35:25,360 اور یہ کہ پورے کے ساتھ کیا ہے میں نے کے بارے میں بات کی تھی کہ دو چیز کے اختیارات. 842 00:35:25,360 --> 00:35:30,930 >> تو بدترین صورت میں اس کا مطلب ہو گا ہم نیچے سرنی کاٹنا پڑا کہ 843 00:35:30,930 --> 00:35:33,270 یہ ایک کا ایک عنصر تھا جب تک. 844 00:35:33,270 --> 00:35:34,810 845 00:35:34,810 --> 00:35:38,930 تو ہم نے نصف میں کاٹ کرنے کے لئے تھا کے طور پر ہم ممکنہ طور پر کر سکتے کئی بار. 846 00:35:38,930 --> 00:35:41,430 یہ لاگ ان ن ہے کیونکہ ہے کیوں ہے آپ صرف دو کی طرف سے تقسیم کر کے رکھنے. 847 00:35:41,430 --> 00:35:42,890 848 00:35:42,890 --> 00:35:45,830 لہذا مفروضات، چیزیں جو آپ اگر آپ کبھی بھی ہو تو جاننے کی ضرورت ہے 849 00:35:45,830 --> 00:35:48,050 ایک بائنری تلاش کا استعمال کرنے جا. 850 00:35:48,050 --> 00:35:50,680 آپ کے عناصر تعین کر لینا چاہیے. 851 00:35:50,680 --> 00:35:53,890 کیونکہ وہ حل کیا جا کرنے کے لئے ہے یہ واحد راستہ تم ہو 852 00:35:53,890 --> 00:35:57,060 آپ کے قابل ہو تو جان سکتا اس میں سے نصف کو نکال باہر کرنے. 853 00:35:57,060 --> 00:36:00,260 >> آپ کو اس گڑبڑ بیگ تھا تو اور نمبر پر آپ کو، کہہ رہے ہیں 854 00:36:00,260 --> 00:36:05,380 ٹھیک ہے، میں مڈل چیک کرنے جا رہا ہوں تعداد اور میں دیکھ رہا ہوں تعداد 855 00:36:05,380 --> 00:36:08,510 اس سے کم ہے، میں نے ابھی جا رہا ہوں منمانے ایک نصف باہر پھینک. 856 00:36:08,510 --> 00:36:11,130 اگر آپ نہیں جانتے آپ کہ دوسرے نصف میں تعداد. 857 00:36:11,130 --> 00:36:12,655 آپ کی فہرست کے مطابق رکھا جائے ہے. 858 00:36:12,655 --> 00:36:14,030 859 00:36:14,030 --> 00:36:16,560 اس کے ساتھ ساتھ، یہ ہو سکتا ہے آگے ایک تھوڑا سا ہو رہا، 860 00:36:16,560 --> 00:36:18,360 لیکن آپ بے ترتیب رسائی حاصل کرنے کی ضرورت ہے. 861 00:36:18,360 --> 00:36:21,940 آپ کرنے کے قابل ہو جائے کرنے کی ضرورت ہے صرف کہ درمیانی عنصر کے پاس جاؤ. 862 00:36:21,940 --> 00:36:25,110 آپ گزرنا ہے تو کچھ کے ذریعے 863 00:36:25,110 --> 00:36:28,630 یا یہ آپ کو اضافی اقدامات کہ درمیانی عنصر سے حاصل کرنے، 864 00:36:28,630 --> 00:36:31,750 لاگ ان کریں (ن) اب کیونکہ نہیں ہے آپ کو اس میں زیادہ کام کا اضافہ کر رہے. 865 00:36:31,750 --> 00:36:34,800 اور یہ تھوڑا سا بنا دے گی دو ہفتوں میں زیادہ احساس، 866 00:36:34,800 --> 00:36:37,950 لیکن میں صرف کی قسم، دیباچے کے لئے چاہتا تھا تم لوگوں کو کیا ہے ایک خیال دے 867 00:36:37,950 --> 00:36:38,999 آنے کے لئے. 868 00:36:38,999 --> 00:36:40,790 لیکن ان دو ہیں اہم مفروضات 869 00:36:40,790 --> 00:36:44,804 آپ کو ایک بائنری فہرست کے لئے کی ضرورت ہے کہ. 870 00:36:44,804 --> 00:36:45,720 اس کے مطابق ہے اس بات کو یقینی بنائیں. 871 00:36:45,720 --> 00:36:47,920 اس کے لئے بہت بڑا ایک ہے آپ ابھی لوگ. 872 00:36:47,920 --> 00:36:52,170 اور یہ کہ ہم میں جا سکتے ہیں ہمارے ہر قسم کے باقی. 873 00:36:52,170 --> 00:36:56,444 تو چار sorts-- بلبلا، اندراج، انتخاب، اور ضم. 874 00:36:56,444 --> 00:36:57,485 وہ ٹھنڈی کے تمام قسم کے ہیں. 875 00:36:57,485 --> 00:37:02,860 تم لوگ CS 124 لینے کے لئے فیصلہ کرتے ہیں تو، آپ ہر قسم کے تمام قسم کے بارے میں پتہ چل جائے گا. 876 00:37:02,860 --> 00:37:07,575 اور تم ایک XKCD پرستار ہیں تو، وہاں ایک بہت ٹھنڈا کامک کے بارے میں ہے 877 00:37:07,575 --> 00:37:11,530 واقعی غیر مؤثر قسم کے، کی طرح ہے جس میں انتہائی آپ کو دیکھنے کے لئے جانے کی سفارش. 878 00:37:11,530 --> 00:37:16,170 ان میں سے ایک گھبراہٹ ترتیب دیں، کی طرح ہے جس کی طرح، اوہ نہیں، بے ترتیب صف واپس ہے. 879 00:37:16,170 --> 00:37:16,991 بند ہونے کا نظام. 880 00:37:16,991 --> 00:37:17,490 چھوڑ دو. 881 00:37:17,490 --> 00:37:19,070 882 00:37:19,070 --> 00:37:21,500 لہذا نے geeky مزاحیہ ہمیشہ اچھا ہے. 883 00:37:21,500 --> 00:37:22,620 884 00:37:22,620 --> 00:37:25,750 >> تو کسی طرح یاد کرتا کا صرف ایک عام خیال کی طرح 885 00:37:25,750 --> 00:37:27,810 بلبلا طرح کس طرح کام کرتا. 886 00:37:27,810 --> 00:37:31,130 887 00:37:31,130 --> 00:37:32,155 تمہیں یاد ہے؟ 888 00:37:32,155 --> 00:37:32,755 >> طالب علم: جی ہاں. 889 00:37:32,755 --> 00:37:33,970 >> انسٹرکٹر: اس کے لئے جاؤ. 890 00:37:33,970 --> 00:37:38,980 >> طالب علم: آپ کے ذریعے جا رہے ہیں تو اور یہ بڑا ہے تو، پھر تم دونوں کا تبادلہ. 891 00:37:38,980 --> 00:37:39,820 >> انسٹرکٹر: MM-HM. 892 00:37:39,820 --> 00:37:40,564 بالکل ٹھیک. 893 00:37:40,564 --> 00:37:41,730 تو کیا تم صرف کے ذریعے iterate. 894 00:37:41,730 --> 00:37:43,050 تم دو نمبروں کی جانچ پڑتال. 895 00:37:43,050 --> 00:37:46,510 ایک سے پہلے بڑا ہے اس کے بعد ایک کے مقابلے میں، 896 00:37:46,510 --> 00:37:50,230 آپ کو صرف میں ہیں تاکہ ان کے تبادلہ اس طرح اعلی تعداد کے سب 897 00:37:50,230 --> 00:37:54,990 فہرست کے اختتام کی طرف اپ بلبلا اور تمام نچلے نمبروں بلبلا نیچے. 898 00:37:54,990 --> 00:37:59,355 >> وہ ٹھنڈی تم لوگوں کو دکھانا تھا ویڈیو چھںٹائی آواز اثر؟ 899 00:37:59,355 --> 00:38:00,480 اس پر وہ ٹھنڈی کی طرح ہے. 900 00:38:00,480 --> 00:38:01,510 901 00:38:01,510 --> 00:38:05,200 رابرٹ نے ابھی کہا کے طور پر، الگورتھم تاکہ آپ کو فہرست کے ذریعے قدم ہے کہ، 902 00:38:05,200 --> 00:38:07,930 ملحقہ اقدار کو گماگمن وہ ترتیب میں نہیں ہو تو. 903 00:38:07,930 --> 00:38:10,975 اور پھر صرف بار بار کرتے رہیں جب تک آپ کو کسی بھی سویپ نہیں کرتے. 904 00:38:10,975 --> 00:38:11,990 905 00:38:11,990 --> 00:38:12,740 اتنا برا نہیں، ٹھیک ہے؟ 906 00:38:12,740 --> 00:38:14,080 907 00:38:14,080 --> 00:38:16,319 تو ہم صرف یہاں ایک فوری مثال ہے. 908 00:38:16,319 --> 00:38:18,360 تو اس طرح کی جا رہی ہے دیگر صعودی میں ان. 909 00:38:18,360 --> 00:38:19,470 910 00:38:19,470 --> 00:38:23,470 تو ہم نے پہلے سے گزر جانا جب وقت، ہم آٹھ کے ذریعے دیکھو 911 00:38:23,470 --> 00:38:26,880 اور چھ ظاہر ہے نہیں ہیں ترتیب میں، ہم ان کے تبادلہ. 912 00:38:26,880 --> 00:38:27,985 >> تاکہ اگلے ایک کو دیکھو. 913 00:38:27,985 --> 00:38:29,430 آٹھ اور ترتیب میں چار نہیں. 914 00:38:29,430 --> 00:38:30,450 ان کے تبادلہ. 915 00:38:30,450 --> 00:38:32,530 اور اس کے بعد آٹھ اور دو، ان کے تبادلہ. 916 00:38:32,530 --> 00:38:33,470 ہم وہاں جا رہے. 917 00:38:33,470 --> 00:38:39,519 تاکہ آپ کے سب سے پہلے پاس کرنے کے بعد، آپ کو جانتے ہیں کہ آپ کی سب سے بڑی تعداد 918 00:38:39,519 --> 00:38:41,810 تمام طریقہ ہو جا رہا ہے یہ صرف ہے کیونکہ سب سے اوپر 919 00:38:41,810 --> 00:38:44,210 مسلسل ہونے جا رہا باقی سب سے بڑے 920 00:38:44,210 --> 00:38:46,810 اور یہ صرف بلبلا جا رہا ہے وہاں آخر تک تمام راستے. 921 00:38:46,810 --> 00:38:48,226 کہ ہر کسی کو سمجھ میں آتا ہے کرتا ہے؟ 922 00:38:48,226 --> 00:38:48,560 923 00:38:48,560 --> 00:38:49,060 ٹھنڈا. 924 00:38:49,060 --> 00:38:51,310 925 00:38:51,310 --> 00:38:53,920 >> تو پھر اگر ہم ہماری دوسری پاس پر نظر ڈالیں. 926 00:38:53,920 --> 00:38:54,980 چھ اور چار، سوئچ. 927 00:38:54,980 --> 00:38:55,920 چھ اور دو، سوئچ. 928 00:38:55,920 --> 00:38:58,700 اور اب ہم ترتیب میں چند چیزیں ہیں. 929 00:38:58,700 --> 00:39:02,240 ہر پاس کے لئے تو ہے کہ ہم ہماری پوری فہرست کے ذریعے بنانے کے، 930 00:39:02,240 --> 00:39:06,320 ہم جانتے ہیں کہ ہے کہ بہت سے تعداد کی طرح آخر میں حل کر دیا گیا ہے گا. 931 00:39:06,320 --> 00:39:07,690 932 00:39:07,690 --> 00:39:09,610 تو ہم نے ایک تیسرے پاس کرتے، جس میں سے ایک سویپ ہے. 933 00:39:09,610 --> 00:39:10,860 934 00:39:10,860 --> 00:39:15,910 اور پھر ہمارے چوتھے پر ہم صفر سلاٹ ہے، گزر. 935 00:39:15,910 --> 00:39:18,570 اور اس طرح ہم جانتے ہیں کہ ہماری صف کے مطابق کیا گیا ہے. 936 00:39:18,570 --> 00:39:20,900 >> اور یہ کہ بڑا ہے بلبلا طرح کے ساتھ بات. 937 00:39:20,900 --> 00:39:23,720 ہم جانتے ہیں کہ جب ہم نے اس ، کہ صفر سویپ ہے 938 00:39:23,720 --> 00:39:26,497 سب کچھ ہے کہ کا مطلب ہے کہ مکمل حکم میں ہے. 939 00:39:26,497 --> 00:39:27,580 یہ ہم چیک کس طرح کی طرح ہے. 940 00:39:27,580 --> 00:39:28,740 941 00:39:28,740 --> 00:39:36,480 تو ہم نے بھی بلبلا کوڈ کرنے جا رہے ہیں ترتیب دیں جس میں بھی اتنا برا نہیں ہے. 942 00:39:36,480 --> 00:39:38,120 ان میں سے کوئی بھی نہیں ہے جو برے ہیں. 943 00:39:38,120 --> 00:39:40,210 میرے خیال میں وہ ایک چھوٹا سا ڈراونی لگ رہے ہو سکتے ہیں جانتے ہیں. 944 00:39:40,210 --> 00:39:42,124 میں لیا جب مجھے پتہ کلاس، اس وقت بھی جب میں نے 945 00:39:42,124 --> 00:39:44,290 کے لئے کلاس کی تعلیم تھا پہلی بار گزشتہ سال، 946 00:39:44,290 --> 00:39:46,165 میں کی طرح، میں نے یہ کس طرح کروں کیا گیا تھا؟ 947 00:39:46,165 --> 00:39:48,540 اس اصول میں سمجھ میں آتا ہے، لیکن ہم اصل میں اس کو کس طرح کرتے ہیں؟ 948 00:39:48,540 --> 00:39:51,420 جس میں بھی چلنا چاہتے ہیں یہی وجہ ہے یہاں لوگ آپ کے ساتھ کوڈ کے ذریعے. 949 00:39:51,420 --> 00:39:54,915 تو میں نے ایک pseudocode کے پاس تم لوگوں کو اس وقت کے لئے. 950 00:39:54,915 --> 00:39:55,950 951 00:39:55,950 --> 00:39:58,970 لہذا صرف کے طور پر یہ بات ذہن میں رکھنا ہم سے زیادہ منتقل کرنے کے بارے میں ہیں. 952 00:39:58,970 --> 00:40:04,210 تو ہم نے کچھ کا انسداد ہے کہ ، ہمارے سویپ کے ٹریک رکھتا ہے 953 00:40:04,210 --> 00:40:08,370 ہم بات کو یقینی بنانے کی ضرورت ہے کیونکہ ہم اس کی جانچ پڑتال کر رہے ہیں کہ. 954 00:40:08,370 --> 00:40:11,830 اور ہم پوری صف پر iterate ہم صرف اس مثال کے ساتھ کیا تھا کے طور پر. 955 00:40:11,830 --> 00:40:12,900 956 00:40:12,900 --> 00:40:17,325 عنصر پہلے سے کہیں زیادہ بڑا ہے تو ہم پر ہیں جہاں کے بعد عنصر، 957 00:40:17,325 --> 00:40:20,760 ہم ان کے تبادلہ اور ہم ہماری اضافہ کاؤنٹر، ہم تبادلہ جیسے ہی کیونکہ 958 00:40:20,760 --> 00:40:23,850 ہم نے اپنے جوابی کہ بتا دینا چاہتا ہوں. 959 00:40:23,850 --> 00:40:26,247 وہاں کوئی سوال ہے؟ 960 00:40:26,247 --> 00:40:27,580 کچھ تو یہاں پر مضحکہ خیز لگتا ہے. 961 00:40:27,580 --> 00:40:29,225 962 00:40:29,225 --> 00:40:32,350 طالب علم: آپ کو صفر کے کاؤنٹر قائم کریں آپ کو لوپ کے ذریعے جانا ہے ہر وقت؟ 963 00:40:32,350 --> 00:40:34,339 آپ جا رکھنے کے لئے نہیں واپس ہر بار صفر کرنے کے لئے؟ 964 00:40:34,339 --> 00:40:35,505 انسٹرکٹر: ضروری نہیں. 965 00:40:35,505 --> 00:40:39,710 تو کیا ہوتا ہے کہ ہم یہاں کے ذریعے جانا ہے. 966 00:40:39,710 --> 00:40:43,830 تو دیر،، یہ یاد کرتے ہیں ناکام بغیر ایک بار پھانسی گا. 967 00:40:43,830 --> 00:40:46,480 تو یہ قائم کرنے کے لئے جا رہا ہے صفر کے برابر کاؤنٹر، 968 00:40:46,480 --> 00:40:48,070 پھر اس کے ذریعے iterate کرنے جا رہا ہے. 969 00:40:48,070 --> 00:40:50,590 اس کے ذریعے iterates ہے کے طور پر، یہ کاؤنٹر اپ ڈیٹ کرے گا. 970 00:40:50,590 --> 00:40:51,870 971 00:40:51,870 --> 00:40:56,900 یہ کاؤنٹر تازہ کاریوں کے طور، یہ ہو چکا ہے جب، یہ صف کے آخر میں پہنچ گئی جب، 972 00:40:56,900 --> 00:41:00,830 ہماری فہرست کے مطابق نہیں کیا گیا ہے تو، انسداد اپ ڈیٹ کیا گیا ہے گا. 973 00:41:00,830 --> 00:41:01,840 974 00:41:01,840 --> 00:41:07,150 >> تو پھر اس حالت چیک کرتا ہے اور اس OK، صفر سے انسداد بڑا ہے، کا کہنا ہے کہ. 975 00:41:07,150 --> 00:41:09,290 اگر ایسا ہے تو، اسے دوبارہ کرتے ہیں. 976 00:41:09,290 --> 00:41:14,340 تم تو جب آپ اس ری سیٹ کرنا چاہتے کے ذریعے جانا، کاؤنٹر صفر کے برابر ہے. 977 00:41:14,340 --> 00:41:18,240 اگر آپ کے مطابق کے ذریعے جانا تو سرنی، کچھ بھی نہیں، بدل 978 00:41:18,240 --> 00:41:21,355 یہ ناکام ہو جاتا، اور اگر آپ حل کی فہرست واپس آ جائیں. 979 00:41:21,355 --> 00:41:23,104 980 00:41:23,104 --> 00:41:24,020 کہ سمجھ میں آتا ہے کرتا ہے؟ 981 00:41:24,020 --> 00:41:24,940 982 00:41:24,940 --> 00:41:26,356 طالب علم: تھوڑا سا میں سکتا ہے یہ. 983 00:41:26,356 --> 00:41:27,147 انسٹرکٹر: OK. 984 00:41:27,147 --> 00:41:28,980 کسی دوسرے کی ہو تو آتا ہے کہ سوال. 985 00:41:28,980 --> 00:41:30,180 986 00:41:30,180 --> 00:41:30,680 جی ہاں. 987 00:41:30,680 --> 00:41:33,760 >> طالب علم: کیا کریں گے تقریب عناصر گماگمن کے لئے ہو؟ 988 00:41:33,760 --> 00:41:36,900 >> انسٹرکٹر: تو ہم اصل میں لکھ سکتے ہیں ہم ابھی جا رہے ہیں کہ. 989 00:41:36,900 --> 00:41:37,801 990 00:41:37,801 --> 00:41:38,300 ٹھنڈا. 991 00:41:38,300 --> 00:41:42,155 اس بات پر تو کیا، ایلیسن کی جا رہی ہے آلات پر واپس سوئچ کرنے کے لئے. 992 00:41:42,155 --> 00:41:43,080 یہ مزہ ہونے جا رہا ہے. 993 00:41:43,080 --> 00:41:45,170 994 00:41:45,170 --> 00:41:47,390 اور ہم نے اپنے اچھا ہے یہاں بلبلا طرح کی چیز. 995 00:41:47,390 --> 00:41:50,800 تو میں نے پہلے ہی سائیکلنگ کیا صف کے ذریعے. 996 00:41:50,800 --> 00:41:53,030 ہم اپنے سویپ ہے کہ صفر کے برابر ہیں. 997 00:41:53,030 --> 00:41:54,480 998 00:41:54,480 --> 00:41:58,440 تو ہم نے ملحقہ تبادلہ کرنا چاہتے عناصر وہ حکم سے باہر ہو تو. 999 00:41:58,440 --> 00:42:03,020 تو پہلی بات یہ کہ ہم کرنے کی ضرورت ہے ہمارے صف کے ذریعے iterate جاتا کرو. 1000 00:42:03,020 --> 00:42:04,500 1001 00:42:04,500 --> 00:42:08,260 >> تو کس طرح آپ کو ہم شاید کیا رائے ہے؟ ہمارے صف کے ذریعے iterate؟ 1002 00:42:08,260 --> 00:42:09,720 1003 00:42:09,720 --> 00:42:13,990 ہم کے لئے ہے اور میں 0 کے برابر ہے. 1004 00:42:13,990 --> 00:42:16,950 1005 00:42:16,950 --> 00:42:22,454 ہم میں سے کم ہونا چاہتے ہیں ن مائنس 1 مائنس K مقابلے. 1006 00:42:22,454 --> 00:42:23,870 اور میں ایک دوسرے میں اس کی وضاحت کریں گے. 1007 00:42:23,870 --> 00:42:26,280 1008 00:42:26,280 --> 00:42:32,830 تو یہ ایک اصلاح یہاں ہے جہاں، میں ہر پاس کے بعد کہا کہ کس طرح یاد 1009 00:42:32,830 --> 00:42:36,655 سرنی ہم کے ذریعے جو کچھ بھی on-- ہے جانتے ہیں کہ 1010 00:42:36,655 --> 00:42:43,590 1011 00:42:43,590 --> 00:42:46,295 >> تاکہ ایک پاس کے بعد ہم اس کے مطابق کیا جاتا ہے جانتے ہیں کہ. 1012 00:42:46,295 --> 00:42:47,370 1013 00:42:47,370 --> 00:42:50,060 دو پاس کرنے کے بعد ہم جانتے اس سب کے مطابق ہے. 1014 00:42:50,060 --> 00:42:52,750 تین پاس کے بعد ہم اس کے مطابق ہے جانتے ہیں. 1015 00:42:52,750 --> 00:42:55,620 جس طرح اس لئے میں iterating رہا ہوں یہاں سرنی کے ذریعے، 1016 00:42:55,620 --> 00:43:01,090 یہ صرف جانے کے لئے اس بات کو یقینی بنا رہا ہے کر رہا ہے ہم جانتے ہیں کہ کیا کے ذریعے ناچھانٹا ہوا ہے. 1017 00:43:01,090 --> 00:43:01,644 ٹھیک ہے؟ 1018 00:43:01,644 --> 00:43:02,810 یہ صرف ایک اصلاح ہے. 1019 00:43:02,810 --> 00:43:04,430 1020 00:43:04,430 --> 00:43:08,210 تم بس naively سے یہ لکھ سکتے تھے سب کچھ کے ذریعے iterating کر، 1021 00:43:08,210 --> 00:43:09,970 یہ صرف زیادہ وقت لگے گا. 1022 00:43:09,970 --> 00:43:12,470 اس چار لوپ کے ساتھ یہ ہے صرف ایک اچھا اصلاح 1023 00:43:12,470 --> 00:43:18,460 ہم نے ہر مکمل ہونے کے بعد معلوم ہے کیونکہ یہاں صف کے ذریعے ایک iteration، 1024 00:43:18,460 --> 00:43:24,050 یہاں ہر مکمل لوپ کی طرح، ہم جانتے ہیں ان عناصر میں سے ایک اور یہ کہ 1025 00:43:24,050 --> 00:43:25,760 آخر میں حل کیا جائے گا. 1026 00:43:25,760 --> 00:43:28,294 >> تو ہم نے ان لوگوں کے بارے میں فکر کرنے کی ضرورت نہیں ہے. 1027 00:43:28,294 --> 00:43:29,710 کہ ہر کسی کو سمجھ میں آتا ہے کرتا ہے؟ 1028 00:43:29,710 --> 00:43:30,950 کہ ٹھنڈی چھوٹی سی چال؟ 1029 00:43:30,950 --> 00:43:32,060 1030 00:43:32,060 --> 00:43:37,270 اس صورت میں، اگر ایسا ہے تو ہم، ذریعے iterating کر رہے 1031 00:43:37,270 --> 00:43:50,590 ہم تو اس کی جانچ کرنا چاہتے ہیں جانتے ہیں کہ صف ن اور ن پلس 1 کے حکم میں ہیں. 1032 00:43:50,590 --> 00:43:52,640 1033 00:43:52,640 --> 00:43:53,559 OK. 1034 00:43:53,559 --> 00:43:54,600 تو یہاں pseudocode کی ہے. 1035 00:43:54,600 --> 00:43:57,540 ہم تو اس کی جانچ کرنا چاہتے صف ن اور ن پلس 1 کے حکم میں ہیں. 1036 00:43:57,540 --> 00:43:59,520 تو ہم وہاں کیا کر سکتا ہے؟ 1037 00:43:59,520 --> 00:44:01,090 1038 00:44:01,090 --> 00:44:03,120 یہ کچھ مشروط ہونے جا رہا ہے. 1039 00:44:03,120 --> 00:44:04,220 یہ ایک ہے تو ہو جائے گا. 1040 00:44:04,220 --> 00:44:07,066 >> طالب علم: صف ن ہے تو صف ن پلس 1 کے مقابلے میں کم. 1041 00:44:07,066 --> 00:44:07,816 انسٹرکٹر: MM-HM. 1042 00:44:07,816 --> 00:44:09,000 1043 00:44:09,000 --> 00:44:10,699 ویسے، سے کم یا اس سے بڑا. 1044 00:44:10,699 --> 00:44:11,615 طالب علم: سے زیادہ. 1045 00:44:11,615 --> 00:44:15,850 1046 00:44:15,850 --> 00:44:17,620 پھر ہم ان کے تبادلہ کے لئے چاہتے ہیں. 1047 00:44:17,620 --> 00:44:18,570 بالکل ٹھیک. 1048 00:44:18,570 --> 00:44:23,570 تو اب ہم کیا میں حاصل ان گماگمن کے لئے طریقہ کار؟ 1049 00:44:23,570 --> 00:44:24,840 1050 00:44:24,840 --> 00:44:28,137 تو ہم اس کو مختصر طور پر کے ذریعے چلا گیا، سویپ تقریب کی ایک قسم کو گزشتہ ہفتے. 1051 00:44:28,137 --> 00:44:29,595 کسی کو بھی یہ کام کیا ہے کہ کس طرح یاد ہے؟ 1052 00:44:29,595 --> 00:44:32,300 1053 00:44:32,300 --> 00:44:34,950 تو ہم نے صرف صحیح، ان میں reassign نہیں کر سکتے؟ 1054 00:44:34,950 --> 00:44:36,640 ان میں سے ایک ضائع ہو جائے گا کیونکہ. 1055 00:44:36,640 --> 00:44:41,696 ہم نے کہا تو ایک تو بی بی اور کے برابر ہے A کے برابر ہے، ان میں سے دونوں اچانک 1056 00:44:41,696 --> 00:44:43,150 B. کے لئے صرف برابر ہیں 1057 00:44:43,150 --> 00:44:45,720 >> تو ہم نے کیا کرنا ہے جو ہم میں ہے ہے کہ ایک عارضی متغیر ہے 1058 00:44:45,720 --> 00:44:49,055 ہمارا جبکہ میں سے ایک منعقد کرنے جا ہم گماگمن کے عمل میں ہیں. 1059 00:44:49,055 --> 00:44:50,200 1060 00:44:50,200 --> 00:44:56,464 تو کیا ہمارے پاس ہے ہم نے کچھ int کے لئے پڑے گا ہے آپ نے اسے تفویض کرسکتے to-- temp کے برابر ہے 1061 00:44:56,464 --> 00:44:59,130 جو بھی کسی ایک کے پاس آپ کو صرف، چاہتے آپ نے اسے اس بات کا یقین کے ٹریک رکھنے کے کر دے 1062 00:44:59,130 --> 00:45:01,840 تو اس معاملے میں، میں جا رہا ہوں صف ن پلس 1 کے لئے تفویض. 1063 00:45:01,840 --> 00:45:03,360 1064 00:45:03,360 --> 00:45:07,674 تو ہے کہ منعقد کرنے جا رہا ہے جو کچھ بھی قدر کہ دوسری بلاک میں ہے 1065 00:45:07,674 --> 00:45:08,590 ہم دیکھ رہے ہیں کہ. 1066 00:45:08,590 --> 00:45:09,700 1067 00:45:09,700 --> 00:45:13,240 >> اور ہم جا سکتے ہیں تو پھر ہم کیا کر سکتے ہیں ہے آگے اور میں reassign صف ن پلس 1، 1068 00:45:13,240 --> 00:45:14,990 ہم کیونکہ ہم جانتے ہیں محفوظ کیا جاتا ہے کہ قیمت ہے. 1069 00:45:14,990 --> 00:45:16,645 1070 00:45:16,645 --> 00:45:19,270 یہ بھی بڑا میں سے ایک ہے تم میں سے کوئی اگر ہم چیزوں میں نہیں جانتا 1071 00:45:19,270 --> 00:45:23,780 آپ دو سوئچ جہاں اگر مسائل تھے کوڈ کی لائنیں اچانک چیزوں پر کام کیا. 1072 00:45:23,780 --> 00:45:25,880 آرڈر CS میں بہت اہم ہے. 1073 00:45:25,880 --> 00:45:29,450 تاکہ یقین ہے کہ آپ آریھ بنانے چیزیں باہر اگر ممکن ہو تو 1074 00:45:29,450 --> 00:45:31,230 کرنے کے طور پر اصل میں کیا ہو رہا ہے. 1075 00:45:31,230 --> 00:45:34,256 تو اب ہم کرنے جا رہے ہیں ، صف ن پلس 1 میں reassign 1076 00:45:34,256 --> 00:45:36,005 ہم کیونکہ ہم جانتے ہیں محفوظ کیا جاتا ہے کہ قیمت ہے. 1077 00:45:36,005 --> 00:45:37,090 1078 00:45:37,090 --> 00:45:41,560 >> اور ہم صف کی کہ تفویض کر سکتے ہیں ن یا اس کیس کی صف میں اندر. 1079 00:45:41,560 --> 00:45:50,540 1080 00:45:50,540 --> 00:45:51,465 بہت سے متغیر. 1081 00:45:51,465 --> 00:45:54,230 1082 00:45:54,230 --> 00:45:55,470 OK. 1083 00:45:55,470 --> 00:46:01,500 تو اب ہم دوبارہ تعینات کر دیا ہے سرنی میں علاوہ 1 سرنی میں میں کیا ہے کے برابر. 1084 00:46:01,500 --> 00:46:08,240 اور اب ہم واپس جا سکتے ہیں اور کیا صف میں تفویض؟ 1085 00:46:08,240 --> 00:46:10,680 1086 00:46:10,680 --> 00:46:11,180 کوئی ہے؟ 1087 00:46:11,180 --> 00:46:13,490 1088 00:46:13,490 --> 00:46:14,010 >> طالب علم: 10. 1089 00:46:14,010 --> 00:46:14,680 >> انسٹرکٹر: 10. 1090 00:46:14,680 --> 00:46:15,180 بالکل ٹھیک. 1091 00:46:15,180 --> 00:46:16,930 1092 00:46:16,930 --> 00:46:18,640 اور ایک آخری بات. 1093 00:46:18,640 --> 00:46:21,840 اب ہم اسے تبدیل کیا ہے تو، ہمیں کیا کرنا چاہیئے؟ 1094 00:46:21,840 --> 00:46:23,740 ایک بات کیا ہے ہمیں بتاتے ہیں کہ جا رہا ہے 1095 00:46:23,740 --> 00:46:27,542 ہم نے کبھی بھی اس پروگرام کو ختم تو کیا ہوگا؟ 1096 00:46:27,542 --> 00:46:29,250 ہم جو ہمیں بتاتا ہے کہ ایک کے مطابق کی فہرست ہے؟ 1097 00:46:29,250 --> 00:46:31,560 1098 00:46:31,560 --> 00:46:33,750 ہم کسی سویپ انجام نہیں کرتے ہیں تو، حق؟ 1099 00:46:33,750 --> 00:46:36,900 سویپ تو کے برابر ہے اس کے آخر میں صفر. 1100 00:46:36,900 --> 00:46:42,975 لہذا جب بھی آپ ہم جیسے، ایک سویپ انجام یہاں صرف کیا، ہم سویپ اپ ڈیٹ کرنا چاہتے. 1101 00:46:42,975 --> 00:46:45,002 1102 00:46:45,002 --> 00:46:47,210 اور میں وہاں تھا معلوم ایک سوال اوائل کے بارے میں آپ یہ کر سکتے ہیں 1103 00:46:47,210 --> 00:46:49,689 بجائے صفر یا ایک کا استعمال کے صحیح یا غلط. 1104 00:46:49,689 --> 00:46:50,980 اور یہ کہ اس کو یہاں ہوتا ہے. 1105 00:46:50,980 --> 00:46:52,750 تو یہ تو نہیں سویپ کہتے ہیں. 1106 00:46:52,750 --> 00:47:01,310 سویپ صفر، ہے تو جس نے ہمیشہ مجھے is-- ملتا میری سچائیوں اور میری falses ملا. 1107 00:47:01,310 --> 00:47:03,960 ہم مدد ہمیں اندازہ چاہتے درست کرنے کے لئے اور اگر یہ نہیں ہے. 1108 00:47:03,960 --> 00:47:07,680 1109 00:47:07,680 --> 00:47:09,630 یہ صفر ہے اگر ایسا ہے تو، تو یہ غلط ہے. 1110 00:47:09,630 --> 00:47:12,560 آپ کو ایک کے ساتھ اس کی نفی کرتے ہیں تو [؟ بینگ؟] یہ سچ ہو جاتا ہے. 1111 00:47:12,560 --> 00:47:13,975 تو پھر اگر اس لائن executes ہے. 1112 00:47:13,975 --> 00:47:15,060 1113 00:47:15,060 --> 00:47:17,370 >> سچ اور جھوٹے اور zeros اور ہیں پاگل ہو جاؤ. 1114 00:47:17,370 --> 00:47:20,690 بس آپ کو آہستہ آہستہ چلنا ہے تو اس کے ذریعے اس احساس کرے گا. 1115 00:47:20,690 --> 00:47:23,320 لیکن اس کا کیا یہ چھوٹا سا ہے کوڈ کا سا یہاں کرتا. 1116 00:47:23,320 --> 00:47:26,490 تو یہ دیکھنے کے لئے چیک کرتا ہے ہم کسی سویپ کیا ہے. 1117 00:47:26,490 --> 00:47:30,054 تو یہ کسی بھی چیز کے سوا، اگر صفر، یہ باطل ہونے جا رہا ہے 1118 00:47:30,054 --> 00:47:31,970 اور پوری بات ہے دوبارہ پھانسی جا. 1119 00:47:31,970 --> 00:47:33,150 1120 00:47:33,150 --> 00:47:33,650 ٹھنڈا؟ 1121 00:47:33,650 --> 00:47:34,660 1122 00:47:34,660 --> 00:47:36,000 >> طالب علم: وقفے کیا کرتا ہے؟ 1123 00:47:36,000 --> 00:47:38,990 >> انسٹرکٹر: صرف وقفے لوپ سے باہر ٹوٹ جاتا ہے. 1124 00:47:38,990 --> 00:47:41,570 یہ اس صورت میں کرے گا تو صرف پروگرام آخر کی طرح 1125 00:47:41,570 --> 00:47:43,828 اور آپ کو صرف کریں گے آپ کے مطابق فہرست ہے. 1126 00:47:43,828 --> 00:47:44,536 طالب علم: حیرت انگیز. 1127 00:47:44,536 --> 00:47:48,094 1128 00:47:48,094 --> 00:47:49,010 انسٹرکٹر: میں معافی چاہتا ہوں؟ 1129 00:47:49,010 --> 00:47:52,110 طالب علم: کیونکہ ہم نے پہلے صفر لکھا زائد 1 لکھا استعمال 1130 00:47:52,110 --> 00:47:54,170 کہ اگر پیش کرنے اس سے کام کریں گے یا نہیں. 1131 00:47:54,170 --> 00:47:54,878 >> انسٹرکٹر: جی ہاں. 1132 00:47:54,878 --> 00:47:56,410 تو اگر آپ کو صفر یا 1 واپس آ سکتے ہیں. 1133 00:47:56,410 --> 00:47:58,950 اس صورت میں، کیونکہ ہم اصل میں نہیں ہو تقریب کے ساتھ کچھ کر، 1134 00:47:58,950 --> 00:48:00,150 ہم صرف اس کو توڑنے کے لئے چاہتے ہیں. 1135 00:48:00,150 --> 00:48:02,680 ہم واقعی اس کی کوئی پرواہ نہیں ہے. 1136 00:48:02,680 --> 00:48:06,960 وقفے بھی تو اچھا ہے اسے باہر کو توڑنے کے لئے استعمال کیا جاتا ہے 1137 00:48:06,960 --> 00:48:10,710 loops چار یا شرائط میں سے ہے کہ آپ عمل کر رکھنے کے لئے نہیں کرنا چاہتا. 1138 00:48:10,710 --> 00:48:12,110 یہ صرف ان میں سے باہر لے جاتا ہے. 1139 00:48:12,110 --> 00:48:13,587 1140 00:48:13,587 --> 00:48:14,795 یہ ایک nuance کی چیز کا تھوڑا سا ہے. 1141 00:48:14,795 --> 00:48:16,737 1142 00:48:16,737 --> 00:48:18,445 وہاں ہے مجھے لگتا ہے جیسے ہاتھ لہراتے ہوئے کی ایک بہت، 1143 00:48:18,445 --> 00:48:19,740 جیسا کہ آپ جلد ہی اس کے بارے میں پتہ چل جائے گا. 1144 00:48:19,740 --> 00:48:20,955 >> لیکن آپ جلد ہی اس کے بارے میں پتہ چل جائے گا. 1145 00:48:20,955 --> 00:48:21,500 میں وعدہ کرتا ہوں. 1146 00:48:21,500 --> 00:48:22,670 1147 00:48:22,670 --> 00:48:23,170 OK. 1148 00:48:23,170 --> 00:48:24,840 تو سب بلبلا طرح حاصل کرتا ہے؟ 1149 00:48:24,840 --> 00:48:25,550 برا بھی نہیں. 1150 00:48:25,550 --> 00:48:31,910 کے ذریعے iterate، سویپ چیزیں استعمال کرتے ہوئے عارضی متغیر، اور ہم سب کو وہاں مقرر کر رہے ہیں؟ 1151 00:48:31,910 --> 00:48:32,960 ٹھنڈا. 1152 00:48:32,960 --> 00:48:34,080 بہت اچھے. 1153 00:48:34,080 --> 00:48:34,807 OK. 1154 00:48:34,807 --> 00:48:35,765 واپس پاورپوائنٹ کرنے. 1155 00:48:35,765 --> 00:48:38,140 1156 00:48:38,140 --> 00:48:40,130 جنرل میں کوئی سوالات کے بارے میں ان کو اب تک؟ 1157 00:48:40,130 --> 00:48:41,200 1158 00:48:41,200 --> 00:48:41,700 ٹھنڈا. 1159 00:48:41,700 --> 00:48:43,110 1160 00:48:43,110 --> 00:48:43,695 MM-HM. 1161 00:48:43,695 --> 00:48:45,279 >> طالب علم: [اشراوی] عام طور پر int اہم. 1162 00:48:45,279 --> 00:48:46,695 اس لئے اس کی ضرورت کے لئے آپ کو کیا ضرورت ہے؟ 1163 00:48:46,695 --> 00:48:48,400 1164 00:48:48,400 --> 00:48:53,550 >> انسٹرکٹر: تو ہم صرف دیکھ رہے تھے صرف اصل چھنٹائی الگورتھم پر. 1165 00:48:53,550 --> 00:48:54,559 1166 00:48:54,559 --> 00:48:56,350 اگر آپ کے اندر اس کو تھا تو ایک وسیع تر پروگرام کی طرح، 1167 00:48:56,350 --> 00:48:57,891 اگر آپ کو ایک int اہم کہیں ہوگا. 1168 00:48:57,891 --> 00:49:00,070 1169 00:49:00,070 --> 00:49:02,880 جہاں آپ پر منحصر اس الگورتھم کو استعمال کرتے، 1170 00:49:02,880 --> 00:49:05,860 یہ کیا ہے اس بات کا تعین کرے گی اس کی طرف سے واپس کیا جا رہا. 1171 00:49:05,860 --> 00:49:09,960 لیکن ہمارے کیس کے لئے، ہم سختی سے ہو اصل میں اس سے فرق پڑتا ہے کہ کس طرح کی طرف دیکھ 1172 00:49:09,960 --> 00:49:11,300 ایک صف کے ذریعے iterate. 1173 00:49:11,300 --> 00:49:12,570 تو ہم نے اس کے بارے میں فکر نہ کرو. 1174 00:49:12,570 --> 00:49:14,150 1175 00:49:14,150 --> 00:49:19,830 >> تو ہم نے کے بارے میں بہترین صورت میں بات کر رہے تھے اور بائنری تلاش کے لئے بدترین منظرنامے. 1176 00:49:19,830 --> 00:49:22,470 لہذا یہ کرنا بھی اہم ہے ہماری ہر قسم میں سے ہر ایک کے لئے کہ. 1177 00:49:22,470 --> 00:49:24,200 1178 00:49:24,200 --> 00:49:27,560 تو کیا کرتے ہیں آپ کے خیال میں سب سے برا ہے بلبلا طرح کی صورت رن ٹائم؟ 1179 00:49:27,560 --> 00:49:29,560 1180 00:49:29,560 --> 00:49:30,700 تم لوگوں کو یاد ہے؟ 1181 00:49:30,700 --> 00:49:31,784 >> طالب علم: N مائنس 1. 1182 00:49:31,784 --> 00:49:32,700 انسٹرکٹر: ن مائنس 1. 1183 00:49:32,700 --> 00:49:35,070 تو ہے کہ وہاں ہیں کا مطلب ہے کہ ن مائنس 1 موازنہ. 1184 00:49:35,070 --> 00:49:40,060 تاکہ احساس کرنے کے لئے ایک بات ہے پہلے iteration ہے کہ، 1185 00:49:40,060 --> 00:49:43,360 ہم، ہم آپس میں موازنہ کے ذریعے جانا ان two-- تاکہ 1 ہے. 1186 00:49:43,360 --> 00:49:46,685 ان دو، تین، چار. 1187 00:49:46,685 --> 00:49:48,070 1188 00:49:48,070 --> 00:49:55,050 لہذا ایک iteration کے بعد ہم پہلے ہی چار موازنہ ہے. 1189 00:49:55,050 --> 00:49:58,230 جب میں رن ٹائم اور (ن) کے بارے میں بات کر رہا ہوں. 1190 00:49:58,230 --> 00:50:04,680 ن موازنہ کی تعداد کی نمائندگی کرتا ہے کتنے عناصر کی ایک تقریب کے طور پر 1191 00:50:04,680 --> 00:50:05,570 ہمارے پاس ہے. 1192 00:50:05,570 --> 00:50:06,430 ٹھیک ہے؟ 1193 00:50:06,430 --> 00:50:08,860 >> تو ہم کے ذریعے جانا ہے، ہم چار ہے. 1194 00:50:08,860 --> 00:50:11,780 آپ کو پتہ ہے اگلی بار ہم ایسا نہیں کرتے اس کی دیکھ بھال کے لئے ہے. 1195 00:50:11,780 --> 00:50:15,140 ہم، ان دونوں کا آپس میں موازنہ ان دو، ان دو، 1196 00:50:15,140 --> 00:50:20,050 اور ہم اس کی اصلاح کی ضرورت نہیں تھی تو میں نے لکھا ہے کہ چار کے لوپ کے ساتھ، 1197 00:50:20,050 --> 00:50:22,750 آپ ویسے بھی یہاں میں موازنہ کیا جائے گا. 1198 00:50:22,750 --> 00:50:26,170 تو اگر آپ کو کرنا پڑے گا صف کے ذریعے چلائے 1199 00:50:26,170 --> 00:50:34,380 اور ن موازنہ ن اوقات، ہر بار ہم کیونکہ 1200 00:50:34,380 --> 00:50:36,670 اس طرح کی ایک بات ہم کے ذریعے چلائے. 1201 00:50:36,670 --> 00:50:38,300 1202 00:50:38,300 --> 00:50:41,475 >> اور ہم کے ذریعے چلانے کے ہر بار سرنی، ہم ن موازنہ کرنے. 1203 00:50:41,475 --> 00:50:42,920 1204 00:50:42,920 --> 00:50:46,330 لہذا اس کے لئے ہماری رن ٹائم ہے دراصل ن، مربع جس 1205 00:50:46,330 --> 00:50:48,400 میں بہت برا ہے ہمارے کہ کیونکہ آخر کو لاگ 1206 00:50:48,400 --> 00:50:51,965 ہم چار تھا کا مطلب ہے کہ ارب عناصر، یہ ہے 1207 00:50:51,965 --> 00:50:55,260 ہم چار ارب لے جا بجائے 32 مربع. 1208 00:50:55,260 --> 00:51:01,240 لہذا سب سے بہتر نہیں رن ٹائم، لیکن کچھ چیزوں کے لئے، 1209 00:51:01,240 --> 00:51:04,610 آپ کے اندر اندر ہیں تو آپ کو، جانتے عناصر میں سے ایک مخصوص حد 1210 00:51:04,610 --> 00:51:06,540 بلبلا طرح استعمال کرنے کے لئے ٹھیک ہو سکتا ہے. 1211 00:51:06,540 --> 00:51:07,530 >> OK. 1212 00:51:07,530 --> 00:51:12,290 تو اب بہترین صورت رن ٹائم کیا ہے؟ 1213 00:51:12,290 --> 00:51:14,357 1214 00:51:14,357 --> 00:51:14,940 طالب علم: زیرو؟ 1215 00:51:14,940 --> 00:51:16,420 یا 1؟ 1216 00:51:16,420 --> 00:51:18,140 >> انسٹرکٹر: تو 1 کروگے ایک موازنہ ہو. 1217 00:51:18,140 --> 00:51:19,114 حق. 1218 00:51:19,114 --> 00:51:20,002 >> طالب علم: N مائنس 1؟ 1219 00:51:20,002 --> 00:51:21,380 1220 00:51:21,380 --> 00:51:22,320 >> انسٹرکٹر: تو، جی ہاں. 1221 00:51:22,320 --> 00:51:22,990 تو ن مائنس 1. 1222 00:51:22,990 --> 00:51:26,510 آپ ن کی طرح تصور ہے جب بھی مائنس 1، ہم صرف اس کو چھوڑ کرنے کے لئے ہوتے 1223 00:51:26,510 --> 00:51:31,680 آپ ہو کیونکہ اور ہم صرف (ن) کا کہنا ہے کہ these-- ہر جوڑے میں سے ہر ایک کا موازنہ کرنے. 1224 00:51:31,680 --> 00:51:36,470 تو یہ، 1 ن جا مائنس گے جس پر ہم ہم صرف تقریبا ن ہے کہونگا. 1225 00:51:36,470 --> 00:51:39,280 آپ رن ٹائم کے ساتھ کام کر رہے ہو، سب کچھ تقرب میں ہے. 1226 00:51:39,280 --> 00:51:43,860 جب تک کے طور مائپادک کے طور پر ہے درست، آپ بہت اچھے ہیں. 1227 00:51:43,860 --> 00:51:45,700 >> ہم اس سے نمٹنے کس طرح ہے. 1228 00:51:45,700 --> 00:51:47,410 1229 00:51:47,410 --> 00:51:51,780 بہترین کیس (ن)، ہے، تا کہ جس ، فہرست میں پہلے ہی کے مطابق ہے، کا مطلب ہے کہ 1230 00:51:51,780 --> 00:51:54,320 اور ہمیں کیا سب کے ذریعے چلایا جاتا ہے اور اس کے مطابق ہے چیک کریں کہ. 1231 00:51:54,320 --> 00:51:56,110 1232 00:51:56,110 --> 00:51:56,855 ٹھنڈا. 1233 00:51:56,855 --> 00:51:57,355 ٹھیک ہے. 1234 00:51:57,355 --> 00:51:58,980 1235 00:51:58,980 --> 00:52:01,920 آپ کو یہاں دیکھ کے طور پر تو، ہم کچھ زیادہ گراف ہے. 1236 00:52:01,920 --> 00:52:02,660 تو ن مربع. 1237 00:52:02,660 --> 00:52:03,780 1238 00:52:03,780 --> 00:52:05,120 مزہ. 1239 00:52:05,120 --> 00:52:09,730 زیادہ جیسا کہ ہم دیکھتے ن سے بھی بدتر، اور شروع کریں 2N سے کہیں بدتر، زیادہ. 1240 00:52:09,730 --> 00:52:12,060 اور پھر آپ کو بھی لاگ ان کی نوشتہ میں حاصل. 1241 00:52:12,060 --> 00:52:18,020 اور آپ کو 124 لے، آپ میں حاصل پاگل کی طرح ہے جس کی لاگ ستارہ ہے، جیسے. 1242 00:52:18,020 --> 00:52:20,172 آپ دلچسپی رکھتے ہیں تو، اگر تلاش شہتیر کے سٹار. 1243 00:52:20,172 --> 00:52:20,880 یہ مذاق کی طرح ہے. 1244 00:52:20,880 --> 00:52:22,800 1245 00:52:22,800 --> 00:52:24,220 تو ہم نے اس عظیم چارٹ ہے. 1246 00:52:24,220 --> 00:52:25,360 1247 00:52:25,360 --> 00:52:28,720 بس ایک سر اپ، یہ ایک عجیب چارٹ ہے کرنا 1248 00:52:28,720 --> 00:52:31,350 ہم کیونکہ آپ کے وسط مدتی لئے آپ ان thins کی طلب کرنے کے لئے طویل عرصے سے. 1249 00:52:31,350 --> 00:52:36,090 تو صرف ایک سر اوپر، پر اس کے پاس آپ کا آپ اچھا دھوکے باز شیٹ پر مڈٹرم 1250 00:52:36,090 --> 00:52:36,616 وہاں. 1251 00:52:36,616 --> 00:52:37,990 تو ہم صرف بلبلا طرح کی طرف دیکھا. 1252 00:52:37,990 --> 00:52:39,510 1253 00:52:39,510 --> 00:52:42,370 بدترین کیس، ن،، (ن) بہترین صورت مربع. 1254 00:52:42,370 --> 00:52:43,367 1255 00:52:43,367 --> 00:52:44,950 اور ہم دوسروں کی طرف دیکھنے کی جا رہے ہیں. 1256 00:52:44,950 --> 00:52:47,940 >> اور آپ کو، صرف دیکھ سکتے ہیں کے طور پر واقعی اچھی طرح کرتا ہے کہ کسی ایک 1257 00:52:47,940 --> 00:52:50,910 ہم کیوں میں مل جائے گا، جس ضم طرح، ہے. 1258 00:52:50,910 --> 00:52:52,690 1259 00:52:52,690 --> 00:52:55,215 تو ہم پر جانے کے لئے جا رہے ہیں اگلے ایک یہاں انتخاب طرح. 1260 00:52:55,215 --> 00:52:56,360 1261 00:52:56,360 --> 00:52:58,420 کسی کو کس طرح یاد کرتا انتخاب کی طرح کام کیا؟ 1262 00:52:58,420 --> 00:53:05,200 1263 00:53:05,200 --> 00:53:05,700 اس کے لئے جاؤ. 1264 00:53:05,700 --> 00:53:08,210 >> طالب علم: بنیادی طور پر کے ذریعے جانا ایک حکم ہے اور ایک نئی فہرست مرتب کریں. 1265 00:53:08,210 --> 00:53:11,001 اور جب تم عناصر ڈال رہے ہیں صرف کے طور پر میں، صحیح جگہ میں ڈال 1266 00:53:11,001 --> 00:53:11,750 نئی فہرست میں. 1267 00:53:11,750 --> 00:53:14,040 >> انسٹرکٹر: تو بالی ووڈ کہ اندراج کی طرح کی طرح زیادہ. 1268 00:53:14,040 --> 00:53:15,040 لیکن آپ واقعی قریب ہیں. 1269 00:53:15,040 --> 00:53:15,915 وہ بہت ہی ہیں. 1270 00:53:15,915 --> 00:53:17,440 یہاں تک کہ میں نے انہیں کبھی کبھی سے ملا کر. 1271 00:53:17,440 --> 00:53:18,981 میں طرح تھا اس کے حصے سے پہلے، انتظار. 1272 00:53:18,981 --> 00:53:20,130 1273 00:53:20,130 --> 00:53:20,630 OK. 1274 00:53:20,630 --> 00:53:24,141 لہذا اگر آپ چاہتے ہیں کیا کرتے، انتخاب کی طرح ہے 1275 00:53:24,141 --> 00:53:25,890 آپ سوچ سکتے ہیں جس طرح یہ اور طریقہ کے بارے میں 1276 00:53:25,890 --> 00:53:30,140 مجھے یقین ہے کہ میں نہیں حاصل کرنے کی کوشش کر دے انہیں اس کے ذریعے جاتا ہے، ملا 1277 00:53:30,140 --> 00:53:33,280 اور یہ منتخب کرتا ہے سب سے چھوٹی تعداد ہے اور یہ 1278 00:53:33,280 --> 00:53:36,070 آپ کی فہرست کے آغاز میں کہ رکھتا. 1279 00:53:36,070 --> 00:53:37,730 یہ کہ سب سے پہلے جگہ کے ساتھ اس کا سویپ. 1280 00:53:37,730 --> 00:53:42,600 1281 00:53:42,600 --> 00:53:45,370 وہ اصل میں مجھے ایک مثال ہے. 1282 00:53:45,370 --> 00:53:46,540 بہت اچھے. 1283 00:53:46,540 --> 00:53:50,130 تو صرف ایک راستہ نے اسے انتخاب کے بارے میں سوچنا ترتیب دیں، سب سے چھوٹی قیمت کو منتخب کریں. 1284 00:53:50,130 --> 00:53:51,940 اور ہم کرنے جا رہے ہیں ایک مثال کے ذریعے چلائے 1285 00:53:51,940 --> 00:53:55,320 میں کیونکہ میں مدد ملے گی لگتا ہے کہ میں انداز ہمیشہ مدد سوچتے ہیں. 1286 00:53:55,320 --> 00:53:58,510 تو ہم نے کچھ کے ساتھ باہر شروع کہ مکمل طور پر ناچھانٹا ہوا ہے. 1287 00:53:58,510 --> 00:54:00,730 ریڈ، ناچھانٹا ہوا ہو جائے گا سبز مطابق کیا جائے گا. 1288 00:54:00,730 --> 00:54:02,190 یہ سب ایک دوسرے میں احساس کرے گا. 1289 00:54:02,190 --> 00:54:08,950 >> تو ہم کے ذریعے جانا اور ہم iterate شروع سے آخر تک. 1290 00:54:08,950 --> 00:54:12,320 اور ہم OK، 2 ہے، کا کہنا ہے کہ ہماری سب سے چھوٹی تعداد. 1291 00:54:12,320 --> 00:54:15,680 تو ہم 2 لینے کے لئے جا رہے ہیں اور ہم جا رہے ہیں ہمارے صف کے سامنے میں منتقل کرنا 1292 00:54:15,680 --> 00:54:17,734 یہ ہے کیونکہ سب سے چھوٹی تعداد ہمارے پاس ہے. 1293 00:54:17,734 --> 00:54:19,150 تو ہے کہ اس نے یہاں کیا کر رہا ہے ہے. 1294 00:54:19,150 --> 00:54:20,820 یہ صرف ان دو کا تبادلہ کرنے جا رہا ہے. 1295 00:54:20,820 --> 00:54:21,850 1296 00:54:21,850 --> 00:54:25,450 تو اب ہم ایک کے مطابق کی ہے حصہ اور ایک ناچھانٹا ہوا حصہ. 1297 00:54:25,450 --> 00:54:27,810 اور یاد کرنے کے لئے اچھا کیا ہے انتخاب کی طرح کے بارے میں 1298 00:54:27,810 --> 00:54:30,690 ہم صرف منتخب کر رہے ہیں یہ ہے ناچھانٹا ہوا حصہ سے. 1299 00:54:30,690 --> 00:54:32,220 1300 00:54:32,220 --> 00:54:34,527 >> مطابق حصہ آپ صرف اکیلے چھوڑ دیں. 1301 00:54:34,527 --> 00:54:35,660 MM-HM؟ 1302 00:54:35,660 --> 00:54:38,452 >> طالب علم: کیا ہے یہ معلوم ہوتا ہے کہ کس طرح اس کا موازنہ کئے بغیر سب سے چھوٹی 1303 00:54:38,452 --> 00:54:39,868 صف میں ہر دوسرے قدر کے. 1304 00:54:39,868 --> 00:54:41,250 انسٹرکٹر: یہ اس کا موازنہ کرتا ہے. 1305 00:54:41,250 --> 00:54:42,041 ہم نے اس کو چھوڑا نہیں پسند. 1306 00:54:42,041 --> 00:54:43,850 یہ مجموعی طور پر صرف عام ہے. 1307 00:54:43,850 --> 00:54:44,831 جی ہاں. 1308 00:54:44,831 --> 00:54:47,205 ہم میں ہوں کوڈ لکھنے جب یقین ہے کہ آپ کو زیادہ مطمئن کیا جائے گا. 1309 00:54:47,205 --> 00:54:48,696 1310 00:54:48,696 --> 00:54:53,030 لیکن آپ سب سے پہلے اس کی دکان سب سے چھوٹی عنصر کے طور پر. 1311 00:54:53,030 --> 00:54:56,110 تم آپس میں موازنہ اور آپ کو اوکے، یہ چھوٹا ہے، کہنا ہے کہ؟ 1312 00:54:56,110 --> 00:54:56,660 جی ہاں. 1313 00:54:56,660 --> 00:54:57,460 اسے رکھ. 1314 00:54:57,460 --> 00:54:58,640 یہاں یہ چھوٹا ہے؟ 1315 00:54:58,640 --> 00:54:59,660 نہیں؟ 1316 00:54:59,660 --> 00:55:02,510 >> یہ آپ کی سب سے چھوٹی ہے آپ کی قدر میں reassign. 1317 00:55:02,510 --> 00:55:06,340 اور آپ کو بہت زیادہ خوش ہو جائے گا ہم کوڈ کے ذریعے جانا جب. 1318 00:55:06,340 --> 00:55:07,510 1319 00:55:07,510 --> 00:55:13,970 تو ہم کے ذریعے جانا ہے، ہم تو اس کے بعد، اس کا تبادلہ ہم یہ ناچھانٹا ہوا حصہ پر نظر ڈالیں. 1320 00:55:13,970 --> 00:55:15,810 تو ہم تینوں باہر منتخب کرنے کے لئے جا رہے ہیں. 1321 00:55:15,810 --> 00:55:18,890 ہم پر اس پر ڈال کرنے کے لئے جا رہے ہیں ہمارے کے مطابق حصہ کے آخر. 1322 00:55:18,890 --> 00:55:20,267 1323 00:55:20,267 --> 00:55:23,100 اور ہم صرف کر رکھنے کے لئے جا رہے ہیں کہ کر، اور اس فعل، کہ. 1324 00:55:23,100 --> 00:55:24,130 1325 00:55:24,130 --> 00:55:27,420 تو یہ یہاں pseudocode کی اپنی قسم ہے. 1326 00:55:27,420 --> 00:55:29,470 1327 00:55:29,470 --> 00:55:31,380 ہم ایک دوسرے میں یہاں اس کوڈ دونگا. 1328 00:55:31,380 --> 00:55:34,140 1329 00:55:34,140 --> 00:55:37,270 لیکن صرف کچھ چلنے کے لئے ایک اعلی سطح پر کے ذریعے. 1330 00:55:37,270 --> 00:55:40,275 آپ کی طرف سے جانے کے لئے جا رہے ہیں میں کس سے ن مائنس 2 0 کے برابر ہے. 1331 00:55:40,275 --> 00:55:41,570 1332 00:55:41,570 --> 00:55:43,530 کہ ایک اور اصلاح ہے. 1333 00:55:43,530 --> 00:55:45,020 اس کے بارے میں بہت زیادہ فکر نہ کرو. 1334 00:55:45,020 --> 00:55:46,620 تو جیسا کہ آپ کہہ رہے تھے. 1335 00:55:46,620 --> 00:55:49,660 1336 00:55:49,660 --> 00:55:54,406 جیکب کہہ رہا تھا، کہ ہم کس طرح کرتے ہیں ہماری کم از کم کیا ہے کا ٹریک رکھنے کے؟ 1337 00:55:54,406 --> 00:55:55,030 ہم کیسے جانتے ہیں؟ 1338 00:55:55,030 --> 00:55:57,060 ہم آپس میں موازنہ کرنے کے لئے ہے ہماری فہرست میں سب کچھ. 1339 00:55:57,060 --> 00:55:59,600 >> تاکہ کم از کم میں نے کے برابر ہے. 1340 00:55:59,600 --> 00:56:03,870 یہ صرف اس صورت میں کہہ رہا ہے ہماری کم از کم قیمت کے انڈیکس. 1341 00:56:03,870 --> 00:56:07,660 تو پھر اس کے ذریعے iterate کرنے جا رہا ہے J میں پلس 1 برابر سے اور یہ جاتا ہے. 1342 00:56:07,660 --> 00:56:11,420 تو ہم نے پہلے سے ہی جانتے ہیں کہ کہ ہمارا پہلا عنصر ہے. 1343 00:56:11,420 --> 00:56:13,240 ہم نے خود کو اس کا موازنہ کرنے کی ضرورت نہیں. 1344 00:56:13,240 --> 00:56:16,970 تو ہم نے اگلے پر اس کا موازنہ شروع یہ میں پلس 1 ن ہے کیوں جن میں سے ایک ہے 1345 00:56:16,970 --> 00:56:20,110 مائنس 1، ہے جو وہاں صف کے آخر سے. 1346 00:56:20,110 --> 00:56:25,090 اور ہم صف میں نے کہا کہ اگر J، سرنی منٹ سے بھی کم ہے 1347 00:56:25,090 --> 00:56:29,200 پھر ہم جہاں میں reassign ہماری کم از کم سوچکانکوں ہے. 1348 00:56:29,200 --> 00:56:37,470 >> اور اگر کم از کم کے طور پر، میں نے کے برابر نہیں ہے جہاں میں ہم واپس یہاں ختم ہو گئی تھی. 1349 00:56:37,470 --> 00:56:38,950 1350 00:56:38,950 --> 00:56:41,790 ہم سب سے پہلے اس میں سے ایک کیا تو جب چاہیں. 1351 00:56:41,790 --> 00:56:49,310 اس صورت میں، اس میں شروع ہو جائے گا صفر، یہ دو ہونے کی وجہ سے ختم ہو گی. 1352 00:56:49,310 --> 00:56:53,010 تو کم از کم آخر میں میں برابر نہیں کرے گا. 1353 00:56:53,010 --> 00:56:55,720 کہ ہمیں یہ جاننے کی سہولت ہم ان کا تبادلہ کرنے کی ضرورت. 1354 00:56:55,720 --> 00:56:57,420 1355 00:56:57,420 --> 00:57:00,470 میں نے ایک ٹھوس مثال کی طرح محسوس اس سے بہت زیادہ مدد ملے گی. 1356 00:57:00,470 --> 00:57:04,970 اس لئے میں تم لوگوں کے ساتھ اس کوڈ دونگا ٹھیک ہے اب اور میں اس سے بہتر ہو جائے گا لگتا ہے کہ. 1357 00:57:04,970 --> 00:57:07,380 1358 00:57:07,380 --> 00:57:11,350 >> قسم ہے کہ میں اس طرح سے کام کرنے کے لئے ہوتے یہ صرف ان کو دیکھنے کے لئے اکثر بہتر ہے. 1359 00:57:11,350 --> 00:57:12,780 1360 00:57:12,780 --> 00:57:17,280 تو ہم کیا کرنا چاہتے ہے ہم سب سے پہلے سب سے چھوٹی چاہتے 1361 00:57:17,280 --> 00:57:19,890 صف میں اپنی پوزیشن میں عنصر. 1362 00:57:19,890 --> 00:57:21,280 بالکل ٹھیک یعقوب کہہ رہا تھا. 1363 00:57:21,280 --> 00:57:23,090 تم کسی نہ کسی طرح اس مواد کو محفوظ کرنے کی ضرورت ہے. 1364 00:57:23,090 --> 00:57:25,900 تو ہم یہاں شروع کرنے کے لئے جا رہے ہیں صف پر iterating. 1365 00:57:25,900 --> 00:57:28,970 ہم یہ بات کہنے جا رہے ہیں ہماری صرف کے ساتھ شروع کرنے کے لئے سب سے پہلے ایک. 1366 00:57:28,970 --> 00:57:38,308 تو ہم نے int کے لئے جا رہے ہیں سب سے چھوٹے میں بالکل سرنی کے برابر ہے. 1367 00:57:38,308 --> 00:57:40,500 1368 00:57:40,500 --> 00:57:45,050 >> تو ایک بات، ہر محسوس کرنا اس لوپ executes ہے وقت، 1369 00:57:45,050 --> 00:57:48,550 ہم ساتھ مزید ایک قدم شروع کر رہے ہیں. 1370 00:57:48,550 --> 00:57:54,780 1371 00:57:54,780 --> 00:57:57,440 ہم شروع کرتے ہیں تو ہم اس میں سے ایک کی طرف دیکھو. 1372 00:57:57,440 --> 00:58:00,840 ہم کے ذریعے iterate اگلی بار، ہم نے اس میں سے ایک میں شروع کر رہے ہیں 1373 00:58:00,840 --> 00:58:02,680 اور یہ ہماری سب سے چھوٹی قیمت مقرر. 1374 00:58:02,680 --> 00:58:10,450 تو یہ بلبلا طرح کی طرح ہے ہم جانتے ہیں کہ جہاں ایک پاس کے بعد کہ، 1375 00:58:10,450 --> 00:58:11,700 یہ آخری عنصر کے مطابق ہے. 1376 00:58:11,700 --> 00:58:12,810 1377 00:58:12,810 --> 00:58:15,120 انتخاب کی طرح کے ساتھ، یہ صرف برعکس ہے. 1378 00:58:15,120 --> 00:58:18,950 >> ہر پاس کے علاقے میں، ہم جانتے ہیں کہ سب سے پہلے ایک کے مطابق ہے. 1379 00:58:18,950 --> 00:58:21,360 دوسری پاس کرنے کے بعد، دوسرا ایک کے مطابق رکھا جائے گا. 1380 00:58:21,360 --> 00:58:26,470 اور آپ کو سلائڈ مثالیں کے ساتھ دیکھا کے طور پر، ہمارے مطابق حصہ صرف بڑھتا جا رہا ہے. 1381 00:58:26,470 --> 00:58:34,020 تو ہماری سب سے چھوٹی ایک کے قیام کی طرف سے arrays پر میں نے، سب یہ کر رہی ہے 1382 00:58:34,020 --> 00:58:37,340 constricting رہا ہے کیا ہم اس طرح دیکھ رہے ہیں 1383 00:58:37,340 --> 00:58:40,164 تعداد کم سے کم کرنے موازنہ کی ہم بنانے. 1384 00:58:40,164 --> 00:58:41,770 کہ ہر کسی کو احساس ہے؟ 1385 00:58:41,770 --> 00:58:42,920 1386 00:58:42,920 --> 00:58:46,380 کیا آپ اس کے ذریعے چلانے کے لئے میری ضرورت دوبارہ سست یا مختلف الفاظ میں؟ 1387 00:58:46,380 --> 00:58:47,180 میں خوش ہوں. 1388 00:58:47,180 --> 00:58:48,095 1389 00:58:48,095 --> 00:58:48,595 OK. 1390 00:58:48,595 --> 00:58:50,060 1391 00:58:50,060 --> 00:58:55,540 >> تو ہم نے ذخیرہ کرنے کر رہے اس نقطہ پر قدر، 1392 00:58:55,540 --> 00:58:57,840 لیکن ہم بھی انڈیکس محفوظ کرنا چاہتے ہیں. 1393 00:58:57,840 --> 00:59:01,010 تو ہم نے ذخیرہ کرنے کے لئے جا رہے ہیں سب سے چھوٹی کی پوزیشن 1394 00:59:01,010 --> 00:59:02,770 صرف میں ہونے جا رہا ہے جس میں سے ایک،. 1395 00:59:02,770 --> 00:59:04,357 1396 00:59:04,357 --> 00:59:05,440 تو اب یعقوب مطمئن ہے. 1397 00:59:05,440 --> 00:59:06,870 ہم ذخیرہ چیزیں ہیں. 1398 00:59:06,870 --> 00:59:08,240 1399 00:59:08,240 --> 00:59:11,870 اور اب ہم کے ذریعے تلاش کرنے کی ضرورت ہے صف کے ناچھانٹا ہوا حصہ. 1400 00:59:11,870 --> 00:59:18,170 اس معاملے میں یہ اتنا ہمارے ناچھانٹا ہوا ہو گا. 1401 00:59:18,170 --> 00:59:20,980 1402 00:59:20,980 --> 00:59:22,462 یہ میں ہے. 1403 00:59:22,462 --> 00:59:25,430 1404 00:59:25,430 --> 00:59:26,210 OK. 1405 00:59:26,210 --> 00:59:30,040 >> تو جو ہم کرنے جا رہے ہیں لوپ کے لئے ایک ہونے جا رہا ہے. 1406 00:59:30,040 --> 00:59:32,066 آپ کی ضرورت ہے جب بھی ایک صف کے ذریعے iterate، 1407 00:59:32,066 --> 00:59:33,440 آپ کے دماغ میں ایک لوپ کے لئے میں جا سکتے ہیں. 1408 00:59:33,440 --> 00:59:34,760 1409 00:59:34,760 --> 00:59:38,090 کچھ int K لئے So ہم کیا سوچتے ہیں برابر 1410 00:59:38,090 --> 00:59:39,700 K ساتھ شروع کرنے کے برابر کرنے کے لئے جا رہی ہے؟ 1411 00:59:39,700 --> 00:59:41,580 1412 00:59:41,580 --> 00:59:44,766 یہ ہم نے اپنے سب سے چھوٹے کے طور پر مقرر کیا ہے قدر اور ہم اس کا موازنہ کرنا چاہتے ہیں. 1413 00:59:44,766 --> 00:59:47,090 ہم اس کا موازنہ کرنے کے لئے کیا چاہتے ہیں؟ 1414 00:59:47,090 --> 00:59:48,730 یہ درست ہے، یہ اگلے ایک ہونے جا رہا ہے؟ 1415 00:59:48,730 --> 00:59:53,200 تو ہم initialized جا کشمیر چاہتے کرنے میں پلس 1 سے شروع کرنا. 1416 00:59:53,200 --> 00:59:55,350 1417 00:59:55,350 --> 01:00:02,800 >> اور ہم نے اس معاملے میں K چاہتے ہیں ہم پہلے سے ہی سائز یہاں ذخیرہ ہے، 1418 01:00:02,800 --> 01:00:03,930 تو ہم صرف سائز کا استعمال کر سکتے ہیں. 1419 01:00:03,930 --> 01:00:06,240 سائز صف کا سائز کیا جا رہا. 1420 01:00:06,240 --> 01:00:09,620 اور ہم صرف کرنا چاہتے ہیں ایک ایک وقت کی طرف سے K اپڈیٹ. 1421 01:00:09,620 --> 01:00:17,410 1422 01:00:17,410 --> 01:00:17,910 ٹھنڈا. 1423 01:00:17,910 --> 01:00:19,650 1424 01:00:19,650 --> 01:00:23,430 تو اب ہم تلاش کرنے کی ضرورت یہاں سب سے چھوٹی عنصر. 1425 01:00:23,430 --> 01:00:24,470 1426 01:00:24,470 --> 01:00:31,380 تو ہم کے ذریعے iterate، تو ہم ، کیا کہنا چاہتے ہیں تو K پر سرنی 1427 01:00:31,380 --> 01:00:37,080 ہماری سب سے چھوٹی value-- سے بھی کم ہے ہم اصل میں ہیں جہاں یہ ہے 1428 01:00:37,080 --> 01:00:42,950 کیا کا ٹریک رکھنے سب سے چھوٹی یہاں 1429 01:00:42,950 --> 01:00:47,740 پھر ہم میں reassign کرنا چاہتے ہیں ہماری سب سے چھوٹی قیمت کیا ہے. 1430 01:00:47,740 --> 01:00:50,645 >> یہ اوہ، ہم ہیں، کا مطلب ہے کہ یہاں ذریعے iterating. 1431 01:00:50,645 --> 01:00:51,699 1432 01:00:51,699 --> 01:00:53,740 جو بھی قدر یہاں ہے ہے نہ ہماری سب سے چھوٹی چیز. 1433 01:00:53,740 --> 01:00:54,448 ہم نے اس کے لئے نہیں کرنا چاہتا. 1434 01:00:54,448 --> 01:00:56,100 ہم نے اس میں reassign کرنا چاہتے ہیں. 1435 01:00:56,100 --> 01:01:02,050 ہم اسے reassigning رہے ہیں اگر ایسا ہے تو، کیا کریں آپ کو یہاں اس کوڈ میں ہو سکتا ہے لگتا ہے؟ 1436 01:01:02,050 --> 01:01:04,160 ہم میں reassign کرنا چاہتے ہیں سب سے چھوٹا اور پوزیشن. 1437 01:01:04,160 --> 01:01:05,740 1438 01:01:05,740 --> 01:01:07,010 تو اب سب سے چھوٹے کیا ہے؟ 1439 01:01:07,010 --> 01:01:08,422 1440 01:01:08,422 --> 01:01:09,130 طالب علم: لڑی K. 1441 01:01:09,130 --> 01:01:09,963 انسٹرکٹر: لڑی K. 1442 01:01:09,963 --> 01:01:13,480 1443 01:01:13,480 --> 01:01:15,956 اور پوزیشن اب کیا ہے؟ 1444 01:01:15,956 --> 01:01:20,940 1445 01:01:20,940 --> 01:01:23,000 کے سوچکانکوں کیا ہے ہماری سب سے چھوٹی قدر؟ 1446 01:01:23,000 --> 01:01:24,030 1447 01:01:24,030 --> 01:01:24,530 یہ صرف کشمیر کی. 1448 01:01:24,530 --> 01:01:25,690 1449 01:01:25,690 --> 01:01:27,790 سرنی K، K تو، وہ اپ سے ملنے. 1450 01:01:27,790 --> 01:01:31,670 1451 01:01:31,670 --> 01:01:33,120 تو ہم نے اس میں reassign کے لئے چاہتا تھا. 1452 01:01:33,120 --> 01:01:34,390 1453 01:01:34,390 --> 01:01:39,950 اور ہم، ہماری سب سے چھوٹی پایا پھر بعد لوپ کے لئے اس کے اختتام پر بہت 1454 01:01:39,950 --> 01:01:45,100 یہاں ہم نے محسوس کیا ہماری سب سے چھوٹی قیمت ہے، تو ہم صرف اس کا تبادلہ. 1455 01:01:45,100 --> 01:01:47,100 1456 01:01:47,100 --> 01:01:50,816 اس صورت میں، کی طرح ہمارے کہنا سب سے چھوٹی قدر یہاں سے باہر ہے. 1457 01:01:50,816 --> 01:01:51,940 یہ ہماری سب سے چھوٹی قیمت ہے. 1458 01:01:51,940 --> 01:01:57,690 >> ہم نے ابھی ابھی جو ہے، یہاں اس کا تبادلہ کرنا چاہتے ہیں کیا نیچے دیے گئے کہ سویپ تقریب 1459 01:01:57,690 --> 01:02:01,270 ہم صرف لکھا جس، کیا ایک ساتھ مل کر ایک جوڑے منٹ پہلے. 1460 01:02:01,270 --> 01:02:02,775 تو یہ واقف نظر آنا چاہئے. 1461 01:02:02,775 --> 01:02:04,320 1462 01:02:04,320 --> 01:02:08,030 اور پھر یہ صرف iterate کے گا کے ذریعے اس پورے راستے تک پہنچ جاتا ہے جب تک 1463 01:02:08,030 --> 01:02:13,100 آپ کا مطلب ہے کہ آخر، کرنے ناچھانٹا ہوا ہو صفر عناصر 1464 01:02:13,100 --> 01:02:14,800 اور سب کچھ حل کر دیا گیا ہے. 1465 01:02:14,800 --> 01:02:16,216 1466 01:02:16,216 --> 01:02:16,715 احساس ہے؟ 1467 01:02:16,715 --> 01:02:18,010 1468 01:02:18,010 --> 01:02:19,280 زیادہ concretely ایک چھوٹا سا؟ 1469 01:02:19,280 --> 01:02:19,990 کوڈ کی مدد کی؟ 1470 01:02:19,990 --> 01:02:21,720 1471 01:02:21,720 --> 01:02:26,410 >> طالب علم: ایک سائز کے لئے، آپ کو کبھی نہیں واقعی اس کی وضاحت یا اسے تبدیل، 1472 01:02:26,410 --> 01:02:27,340 یہ کس طرح جانتی ہے؟ 1473 01:02:27,340 --> 01:02:32,380 >> انسٹرکٹر: تو ایک بات int کے سائز ہے نوٹس یہاں. 1474 01:02:32,380 --> 01:02:35,680 تو ہم اس sort-- طرح میں کہہ رہے ہیں ہے اس میں ایک تقریب یہ ہے صورت 1475 01:02:35,680 --> 01:02:40,770 انتخاب کی طرح، یہ منظور ہے تقریب کے ساتھ میں. 1476 01:02:40,770 --> 01:02:43,460 یہ منظور نہیں کیا گیا تھا تو اگر میں، آپ کو کچھ کرنا ہوگا 1477 01:02:43,460 --> 01:02:47,840 صف کی لمبائی کے ساتھ کی طرح یا آپ کے ذریعے iterate ہوتا 1478 01:02:47,840 --> 01:02:49,390 لمبائی تلاش کرنے کے لئے. 1479 01:02:49,390 --> 01:02:52,680 لیکن یہ منظور ہے کیونکہ میں، ہم صرف استعمال کر سکتے ہیں. 1480 01:02:52,680 --> 01:02:55,720 تم صرف صارف فرض ہے کہ آپ کو ایک درست سائز دیا ہے کہ 1481 01:02:55,720 --> 01:02:57,698 اصل کی نمائندگی کرتا ہے آپ کے صف کے سائز. 1482 01:02:57,698 --> 01:02:59,461 1483 01:02:59,461 --> 01:02:59,960 ٹھنڈا؟ 1484 01:02:59,960 --> 01:03:01,610 1485 01:03:01,610 --> 01:03:05,870 >> تم لوگوں کو ان کے ساتھ کسی بھی دشواری ہو تو یا اس سے زیادہ پریکٹس کوڈنگ قسم چاہتے ہیں 1486 01:03:05,870 --> 01:03:08,050 اپنے اپنے طور پر، آپ کو کرنا چاہئے study.cs50 کے پاس جاؤ. 1487 01:03:08,050 --> 01:03:11,560 1488 01:03:11,560 --> 01:03:12,670 یہ ایک آلہ ہے. 1489 01:03:12,670 --> 01:03:15,040 وہ ایک چیکر ہے کہ آپ اصل میں لکھ سکتے ہیں. 1490 01:03:15,040 --> 01:03:16,180 انہوں pseudocode کی کوشش کروں. 1491 01:03:16,180 --> 01:03:19,310 وہ زیادہ ویڈیوز اور سلائڈ ہونا میں یہاں استعمال والوں سمیت. 1492 01:03:19,310 --> 01:03:23,150 آپ اب بھی ایک محسوس کر رہے ہو تو اگر چھوٹی سی فجی، کہ باہر کرنے کی کوشش. 1493 01:03:23,150 --> 01:03:25,670 ہمیشہ کی طرح، بھی، مجھ سے بات آئے. 1494 01:03:25,670 --> 01:03:26,320 سوال؟ 1495 01:03:26,320 --> 01:03:28,611 >> طالب علم: آپ کو کہہ رہے ہیں سائز ماضی میں بیان کیا جاتا ہے؟ 1496 01:03:28,611 --> 01:03:29,234 1497 01:03:29,234 --> 01:03:29,900 انسٹرکٹر: جی ہاں. 1498 01:03:29,900 --> 01:03:35,570 سائز پہلے سے اپ بیان کیا جاتا ہے یہاں تقریب اعلان میں. 1499 01:03:35,570 --> 01:03:39,060 تو تم نے اس میں منظور کیا گیا ہے کہ فرض صارف کی طرف سے، اور سادگی کی خاطر، 1500 01:03:39,060 --> 01:03:41,896 ہم فرض ہے کہ جا رہے ہیں صارف نے ہمیں صحیح سائز دیا. 1501 01:03:41,896 --> 01:03:43,240 ٹھنڈا. 1502 01:03:43,240 --> 01:03:44,390 تو اس انتخاب طرح ہے. 1503 01:03:44,390 --> 01:03:45,590 1504 01:03:45,590 --> 01:03:47,640 دوستوں، میں آج ہم ایک بہت کچھ سیکھ رہے ہیں جانتے ہیں. 1505 01:03:47,640 --> 01:03:49,710 اس سیکشن کے لئے ایک گھنے ڈیٹا ہے. 1506 01:03:49,710 --> 01:03:51,880 1507 01:03:51,880 --> 01:03:57,340 تو اس کے ساتھ، ہم جا رہے ہیں اندراج کی طرح پر جانے کے لئے. 1508 01:03:57,340 --> 01:04:01,550 1509 01:04:01,550 --> 01:04:02,510 >> OK. 1510 01:04:02,510 --> 01:04:06,100 تو ہے کہ اس سے پہلے کہ ہمیں کیا کرنا ہے یہاں ہماری رن ٹائم تجزیہ. 1511 01:04:06,100 --> 01:04:10,190 ، بہترین صورت میں تو میں نے تمہیں دکھایا جب سے حاصل کی جاچکی 1512 01:04:10,190 --> 01:04:11,960 ٹیبل پہلے ہی میں اس قسم کی یہ دور دی. 1513 01:04:11,960 --> 01:04:15,430 لیکن بہترین صورت رن ٹائم، ہم کیا سوچتے ہیں؟ 1514 01:04:15,430 --> 01:04:17,310 1515 01:04:17,310 --> 01:04:18,130 سب کچھ حل کر. 1516 01:04:18,130 --> 01:04:21,040 1517 01:04:21,040 --> 01:04:22,070 ن مربع. 1518 01:04:22,070 --> 01:04:24,780 کسی کو بھی ایک وضاحت ہے آپ کو لگتا ہے کیوں کے لئے؟ 1519 01:04:24,780 --> 01:04:29,060 1520 01:04:29,060 --> 01:04:30,519 >> طالب علم: آپ کے ذریعے موازنہ کر رہے ہیں 1521 01:04:30,519 --> 01:04:31,268 انسٹرکٹر: حق. 1522 01:04:31,268 --> 01:04:32,540 آپ کے ذریعے موازنہ کر رہے ہیں. 1523 01:04:32,540 --> 01:04:35,630 ہر iteration پر، اگرچہ ہم، ایک کی طرف سے اس decrementing رہے 1524 01:04:35,630 --> 01:04:38,950 اگر آپ اب بھی کے ذریعے تلاش کر رہے ہیں سب کچھ سب سے چھوٹی ایک تلاش کرنے کے. 1525 01:04:38,950 --> 01:04:42,390 تو بھی اگر آپ سب سے چھوٹی قدر ، شروع میں یہاں ہے 1526 01:04:42,390 --> 01:04:44,710 اگر آپ اب بھی اس کا موازنہ کر رہے ہیں باقی سب کے خلاف 1527 01:04:44,710 --> 01:04:46,550 یہ سب سے چھوٹی بات ہے بات کو یقینی بنانا. 1528 01:04:46,550 --> 01:04:49,820 تو اگر آپ کے ذریعے چل رہا ہے ختم کر دیں گے تقریبا ن اوقات مربع. 1529 01:04:49,820 --> 01:04:51,090 1530 01:04:51,090 --> 01:04:51,590 ٹھیک ہے. 1531 01:04:51,590 --> 01:04:52,785 اور بدترین صورت کیا ہے؟ 1532 01:04:52,785 --> 01:04:54,350 1533 01:04:54,350 --> 01:04:57,980 اگر آپ جا رہے ہیں کیونکہ اس کے علاوہ مربع ن کہ اسی طریقہ کار کر جائے. 1534 01:04:57,980 --> 01:05:01,670 اس معاملے میں، انتخاب کے پس قسم کا کچھ ہے 1535 01:05:01,670 --> 01:05:04,010 ہم بھی متوقع رن ٹائم فون ہے کہ. 1536 01:05:04,010 --> 01:05:07,400 لہذا دوسروں میں، ہم صرف جانتے اوپر اور نیچے کی حد. 1537 01:05:07,400 --> 01:05:11,180 کس طرح پاگل پر منحصر ہے ہمارے فہرست ہے یا کس طرح ناچھانٹا ہوا یہ ہے، 1538 01:05:11,180 --> 01:05:15,350 وہ ن یا مربع کے درمیان مختلف ہو. 1539 01:05:15,350 --> 01:05:16,550 ہم نہیں جانتے. 1540 01:05:16,550 --> 01:05:22,820 >> لیکن انتخاب کی طرح ایک ہی ہے، کیونکہ بدترین اور بہترین کیس، کہ ہمیں بتاتی ہے کہ 1541 01:05:22,820 --> 01:05:25,880 ان پٹ کی کوئی بات نہیں کس قسم کی ہم یہ مکمل طور پر ہے کہ آیا، ہے 1542 01:05:25,880 --> 01:05:29,130 حل کر یا مکمل طور پر یہ ہے، کے مطابق کر ریورس 1543 01:05:29,130 --> 01:05:30,740 وقت کے اسی رقم لے جا رہا. 1544 01:05:30,740 --> 01:05:33,760 اس صورت میں، آپ تو ہماری میز سے یاد، 1545 01:05:33,760 --> 01:05:38,610 یہ اصل میں ایک قدر تھا کہ ان دو قسم کے، کی ضرورت نہیں ہے 1546 01:05:38,610 --> 01:05:40,390 جس کی توقع رن ٹائم ہے. 1547 01:05:40,390 --> 01:05:43,350 تو ہم جانتے ہیں کہ جب بھی ہم انتخاب طرح چلائیں، 1548 01:05:43,350 --> 01:05:45,380 یہ کرنے کے لئے بات کی ضمانت ہے ایک مربع ن وقت چلانے. 1549 01:05:45,380 --> 01:05:46,630 وہاں کوئی تبورتنییتا ہے. 1550 01:05:46,630 --> 01:05:47,630 یہ صرف توقع کی جاتی ہے. 1551 01:05:47,630 --> 01:05:48,820 1552 01:05:48,820 --> 01:05:52,140 اور، ایک بار پھر، آپ کو جاننے کے لئے چاہتے ہیں تو مزید، بہار میں CS 124 لے. 1553 01:05:52,140 --> 01:05:55,370 1554 01:05:55,370 --> 01:05:56,712 ٹھیک ہے. 1555 01:05:56,712 --> 01:05:57,545 ہم اس میں سے ایک کو دیکھا ہے. 1556 01:05:57,545 --> 01:05:58,530 1557 01:05:58,530 --> 01:05:59,030 ٹھنڈا. 1558 01:05:59,030 --> 01:06:00,930 تو اندراج کی طرح. 1559 01:06:00,930 --> 01:06:03,330 اور میں شاید جا رہا ہوں اس کے ذریعے بلیز. 1560 01:06:03,330 --> 01:06:05,440 میں تم لوگوں کو یہ کوڈ نہیں پڑے گا. 1561 01:06:05,440 --> 01:06:06,580 ہم صرف اس کے ذریعے چل گے. 1562 01:06:06,580 --> 01:06:10,500 تو اندراج کی طرح طرح کی ہے انتخاب کی طرح کرنے کے لئے اسی طرح 1563 01:06:10,500 --> 01:06:14,460 اس میں ہم دونوں ایک ناچھانٹا ہوا ہے اور سرنی کے ایک حصے کے مطابق کیا. 1564 01:06:14,460 --> 01:06:20,260 >> لیکن کیا مختلف ہے کہ ہے ہم ایک کی طرف سے ایک کے ذریعے جانا کے طور پر، 1565 01:06:20,260 --> 01:06:24,210 ہم صرف جو کچھ بھی نمبر لے ، ہمارے ناچھانٹا ہوا میں اگلے ہے 1566 01:06:24,210 --> 01:06:28,507 اور صحیح طریقے سے اس کی چھانٹی ہمارے کے مطابق صف میں. 1567 01:06:28,507 --> 01:06:30,090 اس کو ایک مثال سے زیادہ احساس بنا دیں گے. 1568 01:06:30,090 --> 01:06:31,140 1569 01:06:31,140 --> 01:06:35,430 تو سب کچھ ناچھانٹا ہوا کے طور پر شروع ہوتا ہے، صرف انتخاب کی طرح کے ساتھ پسند. 1570 01:06:35,430 --> 01:06:38,740 اور ہم میں اس کی چھانٹی کرنے جا رہے ہیں ہم کیا گیا ہے کے طور پر دیگر صعودی. 1571 01:06:38,740 --> 01:06:40,360 1572 01:06:40,360 --> 01:06:43,340 ہماری پہلی پاس پر اتنی ہم سب سے پہلے قیمت لے لو 1573 01:06:43,340 --> 01:06:46,700 اور ہم اوکے، آپ ہیں، کا کہنا ہے کہ اب اپنے آپ کی طرف سے ایک فہرست میں. 1574 01:06:46,700 --> 01:06:49,150 >> آپ کو ایک فہرست میں ہیں کیونکہ خود کی طرف سے، آپ کو حل کر رہے ہیں. 1575 01:06:49,150 --> 01:06:52,460 ہونے کے لئے مبارک ہو اس صف میں پہلا عنصر. 1576 01:06:52,460 --> 01:06:54,800 آپ نے پہلے ہی اپنے اپنے طور پر تمام حل کر رہے ہیں. 1577 01:06:54,800 --> 01:06:58,900 تو اب ہم ایک کے مطابق کی ہے اور ایک ناچھانٹا ہوا سرنی. 1578 01:06:58,900 --> 01:07:01,760 تو اب ہم سب سے پہلے لے. 1579 01:07:01,760 --> 01:07:05,600 یہاں کس کے درمیان ہوتا اور یہاں، ہم کا کہنا ہے کہ ہے 1580 01:07:05,600 --> 01:07:08,890 OK، ہم کو دیکھنے کے لئے جا رہے ہیں ہمارے ناچھانٹا ہوا صف کی پہلی قیمت 1581 01:07:08,890 --> 01:07:13,270 اور ہم میں ان پٹ کرنے کے لئے اسے جا رہے ہیں اس کے مطابق صف میں صحیح جگہ. 1582 01:07:13,270 --> 01:07:21,460 >> تو ہم 5 لے جاتا ہے جو ہم کرتے ہیں اور ہم، 5 3 سے بڑا ہے، ٹھیک ہے، کا کہنا ہے کہ 1583 01:07:21,460 --> 01:07:24,630 تو ہم نے صرف صحیح داخل کہ کے دائیں جانب. 1584 01:07:24,630 --> 01:07:25,130 ہم اچھے ہیں. 1585 01:07:25,130 --> 01:07:26,200 1586 01:07:26,200 --> 01:07:28,420 تو پھر اگر ہم ہمارے اگلے ایک پر جاؤ. 1587 01:07:28,420 --> 01:07:29,720 اور ہم 2 لے. 1588 01:07:29,720 --> 01:07:34,330 ہم اوکے، 2 کم ہے، کا کہنا ہے کہ 3 سے، تو ہم جانتے ہیں کہ یہ اس 1589 01:07:34,330 --> 01:07:36,220 میں کرنے کی ضرورت اب ہماری فہرست کے سامنے. 1590 01:07:36,220 --> 01:07:41,800 تو جو ہم کرنا ہم ذیل 3 اور 5 کو دھکا ہے اور ہم کہ پہلے سلاٹ میں 2 منتقل. 1591 01:07:41,800 --> 01:07:42,990 1592 01:07:42,990 --> 01:07:45,870 تو ہم صرف میں داخل کر رہے ہیں یہ ہونا چاہئے صحیح جگہ. 1593 01:07:45,870 --> 01:07:46,960 1594 01:07:46,960 --> 01:07:49,470 >> پھر ہم پر نظر ہماری اگلے ایک، اور ہم 6 کہنا. 1595 01:07:49,470 --> 01:07:53,620 OK، 6 سے زیادہ ہے ہمارے کے مطابق صف میں سب کچھ، 1596 01:07:53,620 --> 01:07:56,000 تو ہم صرف ختم کرنے کے لئے اس پر ٹیگ. 1597 01:07:56,000 --> 01:07:56,960 اور پھر ہم نے 4 کی طرف دیکھو. 1598 01:07:56,960 --> 01:07:58,130 1599 01:07:58,130 --> 01:08:03,020 4 سے 6 سے کم ہے، یہ کم ہے 5 سے لیکن یہ 3 سے بڑا ہے. 1600 01:08:03,020 --> 01:08:06,270 تو ہم نے صرف صحیح میں داخل 3 اور 5 کے درمیان درمیان. 1601 01:08:06,270 --> 01:08:07,380 1602 01:08:07,380 --> 01:08:10,530 تو تھوڑا بنانا زیادہ ٹھوس سا، 1603 01:08:10,530 --> 01:08:12,280 یہاں کی طرح ہے کیا ہوا ہے کے خیال. 1604 01:08:12,280 --> 01:08:16,430 ہر ایک ناچھانٹا ہوا عنصر کے لئے تو، ہم جہاں مطابق حصہ میں تعین 1605 01:08:16,430 --> 01:08:17,090 یہ ہے. 1606 01:08:17,090 --> 01:08:20,680 >> تاکہ ذہن میں رکھ مطابق اور ناچھانٹا ہوا، 1607 01:08:20,680 --> 01:08:26,080 ہم کے ذریعے اور اعداد و شمار کو گزرنا کرنے کے لئے ہے اس کے مطابق صف میں فٹ بیٹھتا ہے جہاں باہر. 1608 01:08:26,080 --> 01:08:31,460 اور ہم منتقلی کی طرف سے داخل اس کا حق نیچے کرنے کے لئے عناصر. 1609 01:08:31,460 --> 01:08:34,910 اور پھر ہم صرف رکھنے ہم جب تک ذریعے iterating 1610 01:08:34,910 --> 01:08:39,270 ایک مکمل طور پر مطابق فہرست ہے اب صفر جہاں ناچھانٹا ہوا ہے 1611 01:08:39,270 --> 01:08:41,720 اور مطابق لیتا ہماری فہرست کے مکمل. 1612 01:08:41,720 --> 01:08:43,146 1613 01:08:43,146 --> 01:08:45,854 لہذا، ایک بار پھر، اس سے بھی کام کرنے کے لئے زیادہ ٹھوس، ہم pseudocode کے ہے. 1614 01:08:45,854 --> 01:08:47,979 1615 01:08:47,979 --> 01:08:52,410 >> تو بنیادی طور پر میں ہے ن مائنس 1 سے 0 کے برابر، 1616 01:08:52,410 --> 01:08:54,790 کہ ہمارے صف کے صرف لمبائی ہے. 1617 01:08:54,790 --> 01:09:00,979 ہم کے برابر ہے کہ کچھ عنصر ہے پہلی صف کے یا پہلی سوچکانکوں. 1618 01:09:00,979 --> 01:09:03,200 ہم اس کے برابر J مقرر. 1619 01:09:03,200 --> 01:09:04,649 1620 01:09:04,649 --> 01:09:09,210 J سے بڑا ہے تو جبکہ صفر اور صف، J مائنس 1 1621 01:09:09,210 --> 01:09:11,660 سے بڑا ہے عنصر، تمام ہے کہ ایسا کرنے سے رہا 1622 01:09:11,660 --> 01:09:17,479 اس بات کو یقینی بنا رہا ہے آپ J واقعی کی نمائندگی کرتا ہے 1623 01:09:17,479 --> 01:09:20,010 صف کے ناچھانٹا ہوا حصہ. 1624 01:09:20,010 --> 01:09:30,745 >> اب بھی چیزیں موجود ہے جبکہ تو چھانٹی اور J مائنس ون کیا is-- کرنا 1625 01:09:30,745 --> 01:09:31,840 عنصر اس کی ہے؟ 1626 01:09:31,840 --> 01:09:34,760 J یہاں بیان نہیں کیا گیا. 1627 01:09:34,760 --> 01:09:35,677 یہ پریشان کن کی طرح ہے. 1628 01:09:35,677 --> 01:09:36,176 OK. 1629 01:09:36,176 --> 01:09:36,689 ویسے بھی. 1630 01:09:36,689 --> 01:09:39,899 لہذا J مائنس 1، آپ کی جانچ پڑتال کر رہے ہیں اس سے پہلے عنصر. 1631 01:09:39,899 --> 01:09:46,460 تم ٹھیک، عنصر ہے، کہہ رہے ہیں میں چلو am-- جہاں بھی اس سے پہلے کہ 1632 01:09:46,460 --> 01:09:47,540 اصل میں اس کو اپنی طرف متوجہ. 1633 01:09:47,540 --> 01:09:52,580 1634 01:09:52,580 --> 01:09:56,830 تو اس کا کہنا ہے کہ دو ہماری دوسری پاس پر طرح. 1635 01:09:56,830 --> 01:09:59,525 تو میں برابر ہو جا رہا ہے 1 سے، جس میں یہاں ہے. 1636 01:09:59,525 --> 01:10:03,310 1637 01:10:03,310 --> 01:10:06,025 >> تو میں 1 کے برابر ہو جا رہا ہے. 1638 01:10:06,025 --> 01:10:09,510 1639 01:10:09,510 --> 01:10:13,702 یہ 2، 4، 5، 6، 7 ہو گی. 1640 01:10:13,702 --> 01:10:16,060 1641 01:10:16,060 --> 01:10:16,750 ٹھیک ہے. 1642 01:10:16,750 --> 01:10:20,945 تو اس صورت میں ہمارے عنصر 4 کے برابر ہو جا رہا ہے. 1643 01:10:20,945 --> 01:10:22,110 1644 01:10:22,110 --> 01:10:24,946 اور ہم ہے کہ کچھ J ہیں 1 کے برابر ہونے جا رہا. 1645 01:10:24,946 --> 01:10:29,770 1646 01:10:29,770 --> 01:10:30,971 اوہ، J decrementing جاتا. 1647 01:10:30,971 --> 01:10:31,720 یہ کہ یہ کیا ہے. 1648 01:10:31,720 --> 01:10:35,680 لہذا J میں برابر ہے، تو یہ کیا ہے کہاوت، ہم آگے بڑھنے کے طور پر یہ ہے کہ 1649 01:10:35,680 --> 01:10:37,530 ہم صرف اس بات کو یقینی بنا رہے ہیں ہم سے زیادہ نہیں ہو کہ 1650 01:10:37,530 --> 01:10:43,520 ہم کوشش کر رہے ہیں اس طرح تخکرمن ہمارے مطابق فہرست میں چیزوں کو شامل کرنے کے لئے. 1651 01:10:43,520 --> 01:10:49,850 >> لہذا J اس صورت میں 1 کے برابر ہے اور جب تو صف J مائنس 1 one-- سرنی J مائنس 1652 01:10:49,850 --> 01:10:54,610 کہ ہے تو اس صورت میں 2 ہے عنصر سے بڑھ کر، 1653 01:10:54,610 --> 01:10:57,700 پھر یہ سب کیا کر رہی ہے چیزوں کو منتقل کیا جاتا ہے. 1654 01:10:57,700 --> 01:11:04,790 اس معاملے میں، سرنی J مائنس ایک پس 2 ہے جس سرنی صفر، ہو جائے گا. 1655 01:11:04,790 --> 01:11:08,430 2، 4 سے بڑا نہیں ہے لہذا اس پر عمل نہیں کرتا. 1656 01:11:08,430 --> 01:11:11,460 لہذا شفٹ نیچے منتقل نہیں کرتا. 1657 01:11:11,460 --> 01:11:18,790 کیا اس سے فرق پڑتا ہے یہاں صرف ہے نیچے آپ کے مطابق صف منتقل کی. 1658 01:11:18,790 --> 01:11:22,340 1659 01:11:22,340 --> 01:11:26,400 اس صورت میں، اصل میں، ہم نے do-- سکتا کی اس 3 بنانے کے لئے ہیں. 1660 01:11:26,400 --> 01:11:28,080 1661 01:11:28,080 --> 01:11:31,970 تو ہم ساتھ کے ذریعے چلنے کے لئے ہو تو اس مثال، ہم یہاں اب ہیں. 1662 01:11:31,970 --> 01:11:32,740 اس کے مطابق ہے. 1663 01:11:32,740 --> 01:11:34,492 1664 01:11:34,492 --> 01:11:35,200 یہ ناچھانٹا ہوا ہے. 1665 01:11:35,200 --> 01:11:39,090 1666 01:11:39,090 --> 01:11:39,860 ٹھنڈا؟ 1667 01:11:39,860 --> 01:11:46,620 تو میں اتنی، 2 کے برابر ہے ہمارے عنصر 3 کے برابر ہے. 1668 01:11:46,620 --> 01:11:47,920 1669 01:11:47,920 --> 01:11:52,270 اور ہماری جے 2 کے برابر ہے. 1670 01:11:52,270 --> 01:12:00,620 تو ہم ہم اور کے ذریعے دیکھو OK، سرنی J مائنس ایک ہے، کا کہنا ہے کہ 1671 01:12:00,620 --> 01:12:03,470 عنصر سے بڑھ ہم دیکھ رہے ہیں؟ 1672 01:12:03,470 --> 01:12:05,540 اور اس کا جواب صحیح، ہاں میں ہے؟ 1673 01:12:05,540 --> 01:12:11,275 4 3 اور جے سے بڑا ہے 2 ہے، تاکہ اس کوڈ executes. 1674 01:12:11,275 --> 01:12:12,510 1675 01:12:12,510 --> 01:12:18,550 >> تو اب ہم پر ایک صف کیا کرتے ہیں 2، یہیں تا، ہم ان کے تبادلہ. 1676 01:12:18,550 --> 01:12:25,620 تو ہم صرف OK، سرنی، کہنا 2 میں اب 3 بننے جا رہی ہے. 1677 01:12:25,620 --> 01:12:28,130 1678 01:12:28,130 --> 01:12:32,340 اور J برابر کی جا رہی ہے 1 ہے، جس جے مائنس 1،. 1679 01:12:32,340 --> 01:12:34,590 1680 01:12:34,590 --> 01:12:37,200 کہ، خوفناک ہے لیکن تم لوگوں کو اندازہ ہو. 1681 01:12:37,200 --> 01:12:38,360 J اب 1 کے برابر ہے. 1682 01:12:38,360 --> 01:12:44,360 اور صف J صرف کی جا رہی ہے 4 سال کی تھی جس میں ہمارے عنصر، کے برابر. 1683 01:12:44,360 --> 01:12:45,950 1684 01:12:45,950 --> 01:12:48,570 مجھے کچھ مٹ مجھے نہیں کرنا چاہئے ہے یا miswrote کچھ ہے، 1685 01:12:48,570 --> 01:12:49,910 لیکن تم لوگوں کو اندازہ ہو. 1686 01:12:49,910 --> 01:12:50,640 >> یہ ن میں منتقل. 1687 01:12:50,640 --> 01:12:51,920 1688 01:12:51,920 --> 01:12:57,960 یہ تھے اس وقت تو یہ لوپ کرے بار یہ ٹھیک، J اب 1 ہے، کہیں گے. 1689 01:12:57,960 --> 01:13:00,665 اور صف J مائنس 1 اب 2 ہے. 1690 01:13:00,665 --> 01:13:01,750 1691 01:13:01,750 --> 01:13:03,760 2 ہمارے عنصر سے کم ہے؟ 1692 01:13:03,760 --> 01:13:04,540 نہیں؟ 1693 01:13:04,540 --> 01:13:07,970 یہی ہے جو ہم نے کا مطلب ہے کہ اس عنصر ڈالا 1694 01:13:07,970 --> 01:13:10,110 ہمارے کے مطابق صف میں صحیح جگہ پر. 1695 01:13:10,110 --> 01:13:14,400 پھر ہم نے اس کو لے کر سکتے ہیں اور ہم کہتے ہیں، OK، ہمارے کے مطابق صف میں یہاں ہے. 1696 01:13:14,400 --> 01:13:19,940 اور یہ اس تعداد 6 لینے کے لئے اور ہو جائے گا طرح، اوکے، یہ تعداد زیادہ 6 سے کم ہے؟ 1697 01:13:19,940 --> 01:13:20,480 نہیں؟ 1698 01:13:20,480 --> 01:13:21,080 ٹھنڈا. 1699 01:13:21,080 --> 01:13:22,680 ہم ٹھیک ہیں. 1700 01:13:22,680 --> 01:13:23,530 >> اسے دوبارہ کرتے ہیں. 1701 01:13:23,530 --> 01:13:24,740 ہم نے 7 کہنا. 1702 01:13:24,740 --> 01:13:29,010 آخر زیادہ 7 میں کم ہے ہمارے کے مطابق صف کی؟ 1703 01:13:29,010 --> 01:13:29,520 نمبر 1704 01:13:29,520 --> 01:13:30,430 تو ہم ٹھیک ہیں. 1705 01:13:30,430 --> 01:13:32,760 لہذا اس کے مطابق کیا جائے گا. 1706 01:13:32,760 --> 01:13:38,610 بنیادی طور پر تمام اس کرتا ہے اسے لینے کے کہہ رہا ہے، 1707 01:13:38,610 --> 01:13:42,060 کے پہلے عنصر آپ ناچھانٹا ہوا سرنی، 1708 01:13:42,060 --> 01:13:46,010 یہ جاتا ہے جہاں یہ جاننے میں آپ کے مطابق صف میں. 1709 01:13:46,010 --> 01:13:48,780 اور یہ تو صرف دیکھ بھال کرتا ہے سویپ کی کہ ایسا کرنے کی. 1710 01:13:48,780 --> 01:13:51,300 آپ بنیادی طور پر صرف گماگمن رہے جب تک اسے صحیح جگہ میں ہے. 1711 01:13:51,300 --> 01:13:53,600 1712 01:13:53,600 --> 01:13:56,990 بصری تصویر تم ہو یہ ہے کہ اس فعل پر نیچے سب کچھ آگے بڑھ رہے ہیں. 1713 01:13:56,990 --> 01:13:59,420 >> تو یہ نصف بلبلا کی طرح طرح کی esque کے ہے. 1714 01:13:59,420 --> 01:14:02,280 1715 01:14:02,280 --> 01:14:03,420 مطالعہ 50 چیک کریں. 1716 01:14:03,420 --> 01:14:06,000 میں انتہائی کوشش کر کی سفارش کرتے ہیں اپنے اپنے طور پر اس ضابطے سے. 1717 01:14:06,000 --> 01:14:07,220 1718 01:14:07,220 --> 01:14:12,450 آپ کو کسی بھی مسائل ہیں، یا اگر آپ چاہتے ہیں تو ایک اندراج کی طرح کے لئے نمونے کے کوڈ کو دیکھنے کے، 1719 01:14:12,450 --> 01:14:13,750 براہ مہربانی مجھے بتاو. 1720 01:14:13,750 --> 01:14:14,500 میں نے ارد گرد ہمیشہ ہوں. 1721 01:14:14,500 --> 01:14:16,600 1722 01:14:16,600 --> 01:14:20,200 تو بدترین رن ٹائم اور سب سے بہترین صورت رن ٹائم. 1723 01:14:20,200 --> 01:14:30,700 آپ لڑکے نے پہلے ہی ٹیبل سے دیکھا کے طور پر یہ مربع ن ہے اور دونوں ن، تمہیں دکھایا. 1724 01:14:30,700 --> 01:14:35,590 >> لہذا اس قسم کی ہم بات کیا کی جا ہمارے گزشتہ قسم کے ساتھ کے بارے میں، بدترین 1725 01:14:35,590 --> 01:14:38,760 کیس رن ٹائم ہے کہ اگر یہ مکمل طور پر ناچھانٹا ہوا ہے، 1726 01:14:38,760 --> 01:14:42,530 ہم نے ان (ن) بار میں سے سب کا موازنہ کرنے ہے. 1727 01:14:42,530 --> 01:14:47,020 ہم موازنہ کی ایک پوری بہت کچھ اس معکوس ترتیب میں ہے کیونکہ اگر، 1728 01:14:47,020 --> 01:14:50,360 ہم، ٹھیک ہے، یہ کہنے جا رہے ہیں ، یہ اچھا ہے، پر ایک ہی ہے 1729 01:14:50,360 --> 01:14:54,650 اور یہ ایک موازنہ کیا کرنا پڑے گا سب سے پہلے ایک کے خلاف واپس منتقل کر دیا جائے. 1730 01:14:54,650 --> 01:14:56,710 اور ہم نے کی طرف حاصل کرنے کے طور پر دم آخر، ہم ہیں 1731 01:14:56,710 --> 01:14:59,440 ، کا آپس میں موازنہ کا موازنہ، اور کرنے کے لئے سب کچھ کے خلاف آپس میں موازنہ. 1732 01:14:59,440 --> 01:15:03,030 >> تو یہ کیا جا رہا ہے ختم ہو جاتی ہے تقریبا ن مربع. 1733 01:15:03,030 --> 01:15:09,510 یہ تو آپ نے درست ہے تو آپ اچھے ہیں، 2، OK، کہتے. 1734 01:15:09,510 --> 01:15:11,330 3، آپ کو 2 کے مقابلے میں کر رہے ہیں. 1735 01:15:11,330 --> 01:15:12,310 تم اچھے ہو. 1736 01:15:12,310 --> 01:15:14,150 4، آپ کو صرف پونچھ کے لئے آپس میں موازنہ. 1737 01:15:14,150 --> 01:15:14,990 تم اچھے ہو. 1738 01:15:14,990 --> 01:15:17,140 6، تم ٹھیک ہو، پونچھ کے لئے آپس میں موازنہ. 1739 01:15:17,140 --> 01:15:20,870 تو ہر جگہ کے لئے یہ پہلے سے ہی ہے تو مطابق کیا، آپ کو ایک کے مقابلے کی بنا رہے ہیں. 1740 01:15:20,870 --> 01:15:22,320 تو یہ صرف ن ہے. 1741 01:15:22,320 --> 01:15:26,840 اور ہم نے ایک بہترین کیس رن ٹائم ہے کیونکہ (ن) اور (ن) کی ایک بدترین صورت رن ٹائم کے 1742 01:15:26,840 --> 01:15:28,680 مربع، ہم کوئی متوقع رن ٹائم ہے. 1743 01:15:28,680 --> 01:15:31,290 1744 01:15:31,290 --> 01:15:34,020 >> یہ صرف پر منحصر وہاں ہماری فہرست کے افراتفری. 1745 01:15:34,020 --> 01:15:35,860 1746 01:15:35,860 --> 01:15:39,530 اور ایک بار پھر، ایک اور گراف اور ایک اور میز. 1747 01:15:39,530 --> 01:15:41,170 قسم درمیان اختلافات اتنی. 1748 01:15:41,170 --> 01:15:44,180 میں نے بس کے ذریعے ہوا جا رہا ہوں، میں نے ہم بڑے پیمانے پر بات کی ہے کی طرح محسوس 1749 01:15:44,180 --> 01:15:46,570 وہ کس طرح کے تمام قسم کے بارے میں کے مختلف ہوتی ہیں اور ایک ساتھ لنک. 1750 01:15:46,570 --> 01:15:50,564 تو طرح گزشتہ ایک ہے ضم جس کے ساتھ میں تم لوگوں کو بور کرے. 1751 01:15:50,564 --> 01:15:52,105 ہم ایک خوبصورت رنگین تصویر کی کیا ضرورت ہے. 1752 01:15:52,105 --> 01:15:53,860 1753 01:15:53,860 --> 01:15:56,040 تو طرح ایک پنراورتی الگورتھم ہے ضم. 1754 01:15:56,040 --> 01:15:59,910 تو تم لوگ جانتے ہو کہ کیا ایک پنراورتی تقریب ہے؟ 1755 01:15:59,910 --> 01:16:01,550 1756 01:16:01,550 --> 01:16:03,320 >> کسی کو کہنا چاہتے ہیں؟ 1757 01:16:03,320 --> 01:16:04,739 آپ کی کوشش کرنا چاہتے ہیں؟ 1758 01:16:04,739 --> 01:16:07,280 تو ایک پنراورتی تقریب صرف ہے خود بلاتا ہے کہ ایک تقریب. 1759 01:16:07,280 --> 01:16:08,570 1760 01:16:08,570 --> 01:16:11,590 تو تم لوگ واقف ہیں تو فبونیکی ترتیب کے ساتھ، 1761 01:16:11,590 --> 01:16:15,670 کہ کیونکہ پنراورتی تصور ہے آپ نے پچھلے دو لے 1762 01:16:15,670 --> 01:16:17,530 اور ان کے ساتھ شامل آپ کے اگلے ایک حاصل کرنے کے. 1763 01:16:17,530 --> 01:16:21,440 تو پنراورتی، مجھے ہمیشہ لگتا ہے کہ ایک سرپل طرح کے طور پر تکرار کی 1764 01:16:21,440 --> 01:16:24,430 لہذا آپ کو اس میں نیچے spiraling کے کی طرح ہو. 1765 01:16:24,430 --> 01:16:27,150 لیکن یہ صرف ایک تقریب ہے کہ خود بلاتا. 1766 01:16:27,150 --> 01:16:32,660 >> اور، اصل میں، واقعی جلدی میں اس طرح لگتا ہے کیا آپ کو دکھا سکتے ہیں. 1767 01:16:32,660 --> 01:16:34,260 1768 01:16:34,260 --> 01:16:41,840 اگر ہم دیکھیں کہ یہاں تو پنراورتی،، یہ ہے پنراورتی طریقہ ایک صف پر خلاصہ. 1769 01:16:41,840 --> 01:16:45,900 1770 01:16:45,900 --> 01:16:47,880 تو ہم سب کرتے ہیں ہم رقم کی تقریب ہے 1771 01:16:47,880 --> 01:16:52,210 ایک سائز اور ایک صف میں لیتا ہے کہ رقم. 1772 01:16:52,210 --> 01:16:55,210 اور اگر آپ کو نوٹس، سائز ایک ایک وقت کی طرف decrements. 1773 01:16:55,210 --> 01:17:00,365 اور یہ کرتا ہے تمام x کے برابر ہے، اگر ہے صفر اگر تو صف کا سائز 1774 01:17:00,365 --> 01:17:02,710 یہ صفر بتائےگا صفر کے برابر ہے. 1775 01:17:02,710 --> 01:17:10,440 >> ورنہ اس خلاصہ صف کے آخری عنصر، 1776 01:17:10,440 --> 01:17:14,790 اور اس کے بعد کی رقم لیتا ہے صف کی باقی. 1777 01:17:14,790 --> 01:17:17,555 تو یہ صرف اس کو نیچے ٹوٹ رہا ہے چھوٹے اور چھوٹے مسائل میں. 1778 01:17:17,555 --> 01:17:18,990 1779 01:17:18,990 --> 01:17:21,890 لمبی کہانی مختصر، تکرار، کہلاتی ہے کہ تقریب. 1780 01:17:21,890 --> 01:17:25,740 کہ آپ کو اس سے باہر ہو گیا اور کچھ نہیں ہے تو، کہ ایک پنراورتی تقریب ہے کیا ہے. 1781 01:17:25,740 --> 01:17:29,870 آپ 51 لے، تو آپ کو بہت ملے گا، تکرار کے ساتھ بہت آرام دہ اور پرسکون. 1782 01:17:29,870 --> 01:17:31,110 1783 01:17:31,110 --> 01:17:32,370 یہ واقعی اچھا ہے. 1784 01:17:32,370 --> 01:17:34,660 اس کی طرح میں احساس بنا دیا باہر 3 AM ایک رات. 1785 01:17:34,660 --> 01:17:37,900 اور میں جانتا ہوں، کیوں کی طرح تھا میں نے اس کا استعمال کبھی نہیں کی ہے؟ 1786 01:17:37,900 --> 01:17:39,170 1787 01:17:39,170 --> 01:17:42,430 >> بنیادی طور پر، ضم طرح کے لئے So کیا کرنے جا رہا ہے، یہ ہے ہے 1788 01:17:42,430 --> 01:17:45,620 اس کو توڑنے اور اس کو توڑنے کے لئے جا یہ صرف واحد عناصر ہے جب تک نیچے. 1789 01:17:45,620 --> 01:17:47,570 واحد عناصر کو الگ الگ کرنے کے لئے آسان ہیں. 1790 01:17:47,570 --> 01:17:48,070 ہم یہ دیکھیں. 1791 01:17:48,070 --> 01:17:50,760 تم سے ایک عنصر ہے، تو یہ بات ہے پہلے ہی کے مطابق سمجھا. 1792 01:17:50,760 --> 01:17:53,800 ن عناصر کی ان پٹ پر لہذا، ن کم 2 ہے تو، 1793 01:17:53,800 --> 01:17:58,120 صرف یہ ہے کہ کیونکہ اس کا مطلب واپس آ جائیں یہ ہم نے دیکھا ہے 0 یا 1 یا تو ہے. 1794 01:17:58,120 --> 01:18:00,050 ان کے مطابق عناصر تصور کیا جاتا ہے. 1795 01:18:00,050 --> 01:18:02,170 >> ورنہ نصف میں اسے توڑ. 1796 01:18:02,170 --> 01:18:06,336 دوسری طرح، پہلی نصف ترتیب نصف، اور پھر ان کے ساتھ ضم. 1797 01:18:06,336 --> 01:18:07,460 ایسا کیوں ہے کہ ضم طرح کہا جاتا ہے. 1798 01:18:07,460 --> 01:18:08,700 1799 01:18:08,700 --> 01:18:12,155 ہم نے ان کو الگ الگ کر لیں گے تو کیا ہم یہاں ہے. 1800 01:18:12,155 --> 01:18:13,410 1801 01:18:13,410 --> 01:18:17,210 تو ہم نے ان کو رکھنے کے رکھنے سرنی سائز 1 ہے جب تک. 1802 01:18:17,210 --> 01:18:20,790 اسے 1 ہے تو جب، ہم ابھی آیا اس کے مطابق صف ہے کیونکہ، 1803 01:18:20,790 --> 01:18:23,940 اور اس کے مطابق صف ہے، اور یہ کہ کے مطابق صف، ہم سب کو حل کر رہے ہیں. 1804 01:18:23,940 --> 01:18:25,390 1805 01:18:25,390 --> 01:18:29,420 تو پھر ہم کیا کرتے ہیں ہم ہے ان کے ساتھ ضم کرنا شروع. 1806 01:18:29,420 --> 01:18:31,820 >> لہذا جس طرح آپ کر سکتے ہیں ولی ہے کے بارے میں سوچنا 1807 01:18:31,820 --> 01:18:36,240 آپ صرف چھوٹی ہٹانے ذیلی arrays میں سے ہر ایک کی تعداد 1808 01:18:36,240 --> 01:18:38,330 اور صرف ابھرا سرنی پر یہ شامل. 1809 01:18:38,330 --> 01:18:44,290 اگر ایسا ہے تو ہمارے پاس ہے جب آپ کو، یہاں دیکھو ان سیٹ ہم نے 4، 6، اور 1 ہے. 1810 01:18:44,290 --> 01:18:47,280 ہم ان ضم کرنا چاہتے ہیں جب، ہم ان کی پہلی دو پر نظر 1811 01:18:47,280 --> 01:18:50,730 اور ہم 1 چھوٹا ہے، ٹھیک ہے، کا کہنا ہے کہ، یہ سامنے کو جاتا ہے. 1812 01:18:50,730 --> 01:18:54,330 4 اور 6، موازنہ کرنے کی کوئی بات نہیں ہے یہ، صرف آخر کے لئے اس پر ٹیگ کرنے. 1813 01:18:54,330 --> 01:18:58,020 >> ہم ان دونوں کو اکٹھا کرتے ہیں تو، ہم صرف ، ان دونوں کی چھوٹی ایک لو 1814 01:18:58,020 --> 01:18:59,310 تاکہ اسے 1 ہے. 1815 01:18:59,310 --> 01:19:01,690 اور اب ہم لے ان دو، تا 2 کے چھوٹے. 1816 01:19:01,690 --> 01:19:03,330 ان دو، 3 کی چھوٹی. 1817 01:19:03,330 --> 01:19:06,260 ان دو، 4، 5، 6 کے چھوٹے. 1818 01:19:06,260 --> 01:19:08,630 تو کیا تم صرف ان سے دور ھیںچ رہے. 1819 01:19:08,630 --> 01:19:11,210 اور وہ ہے کے وجہ ماضی میں حل کر دیا گیا، 1820 01:19:11,210 --> 01:19:14,300 آپ کو صرف ایک ہے موازنہ نہیں ہر بار. 1821 01:19:14,300 --> 01:19:19,610 یہاں بہت زیادہ کوڈ، صرف نمائندگی. 1822 01:19:19,610 --> 01:19:24,410 تو تم نے وسط میں شروع کریں اور آپ کی طرح بائیں اور دائیں 1823 01:19:24,410 --> 01:19:26,180 اور پھر آپ کو صرف ان کو ضم. 1824 01:19:26,180 --> 01:19:30,080 >> اور ہم نے کوڈ کی ضرورت نہیں ہے کے لئے یہیں ضم. 1825 01:19:30,080 --> 01:19:34,110 لیکن، پھر، تم پر جانے تو 50 کا مطالعہ، یہ ہو جائے گا. 1826 01:19:34,110 --> 01:19:36,860 ورنہ مجھ سے باتیں آئے اگر آپ نہیں ہیں تو اب بھی الجھن میں. 1827 01:19:36,860 --> 01:19:42,340 تو یہاں ٹھنڈی چیز کہ سب سے بہتر صورت ہے، بدترین کیس، اور متوقع رن ٹائم 1828 01:19:42,340 --> 01:19:46,250 ، ن تمام شروع کر رہے ہیں جس ہم ہے کے مقابلے میں کہیں بہتر ہے 1829 01:19:46,250 --> 01:19:48,000 ہمارے ہر طرح کے آرام کے لئے دیکھا. 1830 01:19:48,000 --> 01:19:51,840 ہم نے دیکھا مربع ن کر دیا اور اصل میں جو ہم 1831 01:19:51,840 --> 01:19:54,380 جو بہت اچھا ہے، ن لاگ ان ن کیا جاتا ہے یہاں ملتا ہے. 1832 01:19:54,380 --> 01:19:55,830 >> یہ ہے کہ کس طرح زیادہ بہتر کی طرف دیکھو. 1833 01:19:55,830 --> 01:19:56,780 اتنی اچھی وکر. 1834 01:19:56,780 --> 01:19:58,130 1835 01:19:58,130 --> 01:20:00,120 تو بہت زیادہ موثر. 1836 01:20:00,120 --> 01:20:03,510 اگر آپ کبھی بھی کر سکتے ہیں تو، استعمال طرح ضم. 1837 01:20:03,510 --> 01:20:04,810 یہ آپ کو وقت بچائے گا. 1838 01:20:04,810 --> 01:20:07,670 پھر، ہم نے کہا کہ، اگر آپ، یہ کم سے خطے میں نیچے ہیں 1839 01:20:07,670 --> 01:20:09,480 یہ اتنا نہیں بناتا ایک فرق زیادہ. 1840 01:20:09,480 --> 01:20:11,360 تم ہزاروں کے لئے اٹھو اور آدانوں کے ہزاروں، 1841 01:20:11,360 --> 01:20:13,318 تم ضرور ایک چاہتے ہیں زیادہ موثر الگورتھم. 1842 01:20:13,318 --> 01:20:14,730 1843 01:20:14,730 --> 01:20:19,400 سب کا اور، ایک بار پھر، ہمارے خوبصورت ٹیبل تم لوگ آج سیکھا کہ قسم. 1844 01:20:19,400 --> 01:20:21,157 >> تو میں نے اسے ایک گھنے دن تھا جانتے. 1845 01:20:21,157 --> 01:20:23,490 یہ ضروری نہیں جا رہا ہے آپ pset کے ساتھ آپ کی مدد کرنے. 1846 01:20:23,490 --> 01:20:28,250 لیکن میں صرف ایک تردید بنانا چاہتے ہیں اس حصے صرف psets میں سے نہیں ہے. 1847 01:20:28,250 --> 01:20:31,240 یہ سب مادی منصفانہ ہے تمہارا ہے midterms لئے کھیل. 1848 01:20:31,240 --> 01:20:35,430 اور اگر تم CS ساتھ جاری کرتے بھی تو، یہ واقعی بہت اہم اصول ہیں 1849 01:20:35,430 --> 01:20:37,870 کہ آپ کو جاننے کی ضرورت ہو گی. 1850 01:20:37,870 --> 01:20:41,700 تو کچھ دن ہو جائے گا ایک تھوڑا اور pset کی مدد کی، 1851 01:20:41,700 --> 01:20:44,600 لیکن کچھ ہفتے ہو گا بہت زیادہ اصل مواد 1852 01:20:44,600 --> 01:20:46,600 کہ سپر لگتا نہیں کر سکتے ابھی آپ کے لئے مفید، 1853 01:20:46,600 --> 01:20:51,215 اگر آپ جاری رکھتے ہیں تو لیکن میں وعدہ کرتا ہوں پر بہت، بہت مفید ہو گا. 1854 01:20:51,215 --> 01:20:52,560 1855 01:20:52,560 --> 01:20:54,250 >> پس اس کے حصے کے لیے یہ بات ہے. 1856 01:20:54,250 --> 01:20:55,250 تار پر نیچے. 1857 01:20:55,250 --> 01:20:56,570 میں نے ایک منٹ کے اندر اندر اس نے کیا. 1858 01:20:56,570 --> 01:20:58,262 1859 01:20:58,262 --> 01:20:58,970 لیکن تم وہاں جاؤ. 1860 01:20:58,970 --> 01:21:01,240 اور میں ڈونٹس یا کینڈی پڑے گا. 1861 01:21:01,240 --> 01:21:03,464 الرجک کسی کے لئے ہے راہ کی طرف سے کچھ بھی،؟ 1862 01:21:03,464 --> 01:21:05,307 1863 01:21:05,307 --> 01:21:05,890 انڈے اور دودھ. 1864 01:21:05,890 --> 01:21:08,120 لہذا ڈونٹس ایک نہیں ہیں؟ 1865 01:21:08,120 --> 01:21:09,400 1866 01:21:09,400 --> 01:21:10,160 OK. 1867 01:21:10,160 --> 01:21:10,770 ٹھیک ہے. 1868 01:21:10,770 --> 01:21:12,120 چاکلیٹ نہیں؟ 1869 01:21:12,120 --> 01:21:12,620 Starburst. 1870 01:21:12,620 --> 01:21:13,837 1871 01:21:13,837 --> 01:21:14,670 Starbursts اچھے ہیں. 1872 01:21:14,670 --> 01:21:15,170 OK. 1873 01:21:15,170 --> 01:21:17,045 ہم جا رہے ہیں پھر اگلے ہفتے Starburst. 1874 01:21:17,045 --> 01:21:18,240 یہی تو میں مل جائے گا ہے. 1875 01:21:18,240 --> 01:21:19,690 تم لوگوں کو ایک عظیم ہفتے ہے. 1876 01:21:19,690 --> 01:21:20,460 آپ رپورٹ پڑھیں. 1877 01:21:20,460 --> 01:21:22,130 >> اگر آپ کو کوئی سوالات ہیں، تو مجھے بتانا. 1878 01:21:22,130 --> 01:21:25,300 pset کے دو گریڈ ہونا چاہئے جمعرات کی طرف سے آپ کے لئے باہر. 1879 01:21:25,300 --> 01:21:28,320 اگر آپ کو کوئی سوالات ہیں، تو مجھے کچھ تازہ ترین درجہ بندی کے طریقے کے متعلق 1880 01:21:28,320 --> 01:21:32,250 یا کیوں میں نے راستے میں کچھ درجہ بندی ، مجھے ای میل کریں تھی، مجھ سے بات آئے. 1881 01:21:32,250 --> 01:21:34,210 میں نے ایک چھوٹا سا پاگل رواں ہوں ہفتے، لیکن میں وعدہ کرتا ہوں 1882 01:21:34,210 --> 01:21:36,340 میں اب بھی 24 گھنٹے کے اندر جواب دیں گے. 1883 01:21:36,340 --> 01:21:38,240 تو ایک عظیم ہفتے، سب ہونا. 1884 01:21:38,240 --> 01:21:40,090 اپنے pset پر گڈ لک. 1885 01:21:40,090 --> 01:21:41,248