1 00:00:00,000 --> 00:00:06,370 2 00:00:06,370 --> 00:00:08,150 >> JASON HIRSCHHORN: خوش آمدید ہفتہ سے تین، سب. 3 00:00:08,150 --> 00:00:11,650 ہم نے ایک مصروف لیکن دلچسپ ہے آگے ہم کے سیکشن. 4 00:00:11,650 --> 00:00:17,010 تو سب سے پہلے، ہم نے کچھ کر دیا ہے کیونکہ کورس کے ساتھ پیش رفت لیکن ہم اب بھی 5 00:00:17,010 --> 00:00:20,570 سیکھنے کی ایک بہت میں ہوں، ایسا کرنے کے لئے چھوڑ دیا ہے تم لوگ کچھ وسائل کو ظاہر کرنے کے لئے جا 6 00:00:20,570 --> 00:00:24,160 کہ ناقابل یقین حد تک ثابت کرنا چاہئے آپ سے رجوع نہ صرف مددگار کے طور پر آپ 7 00:00:24,160 --> 00:00:28,130 مسئلہ سیٹ، بلکہ سب کے سب ہضم ہم آپ لوگوں کو دے مواد 8 00:00:28,130 --> 00:00:30,800 لیکچر اور شارٹس اور حصے. 9 00:00:30,800 --> 00:00:34,790 >> اس کے بعد ہم پہلے 20 خرچ کرنے کے لئے جا رہے ہیں حصے پر جا کے 25 منٹ 10 00:00:34,790 --> 00:00:38,630 آپ یا نہیں کر سکتے ہیں کر سکتے ہیں جس GDB، اس وقت استعمال کیا جاتا ہے، لیکن یہ ایک ہے 11 00:00:38,630 --> 00:00:42,570 ناقابل یقین حد تک مددگار آلہ کرے گا آپ کو آپ کے پروگرام ڈیبگ مدد. 12 00:00:42,570 --> 00:00:46,060 آپ کی ایک بہت میں printf کا استعمال کیا کر سکتے ہیں اعداد و شمار آپ کے پروگرام کے مشرق 13 00:00:46,060 --> 00:00:47,430 ایک متغیر برابری کیا. 14 00:00:47,430 --> 00:00:52,060 GDB بھی printf کے مقابلے میں بہتر ہے اپنے کوڈ کو بگاڑ نہیں ہے آپ کی وجہ سے 15 00:00:52,060 --> 00:00:53,320 ایک executable فائل پر چلانے. 16 00:00:53,320 --> 00:00:56,500 تو ہم 10 سب سے زیادہ مفید جائیں گے آپ GDB کے لئے کی ضرورت کا حکم، اور ہم ہیں 17 00:00:56,500 --> 00:01:00,540 ایک دوسرے کے ساتھ تو ایک مشق پر جانے کے لئے جا مسئلہ میں آپ کو، تین اور اس سے باہر قائم 18 00:01:00,540 --> 00:01:03,320 ڈبگ مدد کرنے کے لئے GDB استعمال کر سکتے ہیں آپ کے پروگراموں. 19 00:01:03,320 --> 00:01:06,420 اور آخر میں، ہم کچھ پر جانے کے لئے جا رہے ہیں الگورتھم چھانٹ رہا ہے اور تلاش 20 00:01:06,420 --> 00:01:10,590 آپ درس میں نے دیکھا، اور ہم ہیں اصل کوڈ، نہ صرف کرنے کے لئے جا 21 00:01:10,590 --> 00:01:17,360 pseudocode، لیکن کوڈ بائنری تلاش، بلبلا طرح، اور انتخاب کی طرح. 22 00:01:17,360 --> 00:01:20,090 >> تو سب سے پہلے، میں جانا چاہتا ہوں وسائل پر. 23 00:01:20,090 --> 00:01:23,530 یہ ایک وسیع فہرست ہے، اور یہ ہے میں نے ایک بہت تھا کیونکہ چھوٹے فونٹ 24 00:01:23,530 --> 00:01:24,390 یہاں پر فٹ. 25 00:01:24,390 --> 00:01:26,950 لیکن ان، آپ کی مدد نہ صرف پھر، مسئلہ کے سیٹ کے ساتھ اور 26 00:01:26,950 --> 00:01:30,760 تم نے سیکھا digesting کے بارے میں معلومات، لیکن یقینی طور پر، کوئز وقت، ان گی 27 00:01:30,760 --> 00:01:32,130 ناقابل یقین حد تک مددگار ثابت ہو. 28 00:01:32,130 --> 00:01:34,700 تو سب سے پہلے، لیکچر نوٹ. 29 00:01:34,700 --> 00:01:39,480 آپ cs50.net/lectures پر جانے اور تو مخصوص ہفتے اور دن میں سکرال، 30 00:01:39,480 --> 00:01:43,120 آپ کو ہر ایک کے لئے نوٹوں ہیں کہ دیکھیں گے بس نہیں ہے، لیکچر ایک 31 00:01:43,120 --> 00:01:47,250 نقل، لیکن ایک ترمیم ورژن کوڈ کے ساتھ درس میں شامل کیا گیا تھا کیا 32 00:01:47,250 --> 00:01:49,610 ٹکڑوں اور دوسرے مددگار tidbits کے. 33 00:01:49,610 --> 00:01:52,220 میں انتہائی ان پر جانے کی سفارش. 34 00:01:52,220 --> 00:01:55,340 اور پھر اس کے ساتھ ساتھ، منبع کوڈ ہے ہر ایک لیکچر سے دستیاب. 35 00:01:55,340 --> 00:02:00,050 اور پھر، ان سلائڈ بھی ہو جائے گا cs50.net/sections پر آن لائن دستیاب 36 00:02:00,050 --> 00:02:01,480 اس شام. 37 00:02:01,480 --> 00:02:06,860 >> تو دوسری شارٹس ہر ہفتے ہیں احاطہ کرتا موضوعات میں، عام طور پر 5 سے 15 38 00:02:06,860 --> 00:02:08,090 لمبائی میں منٹ. 39 00:02:08,090 --> 00:02:12,310 اور وہ امید ہے کہ آپ کو ایک دے گا مختلف موضوعات پر بہت اچھا پرائمر. 40 00:02:12,310 --> 00:02:12,870 تیسری - 41 00:02:12,870 --> 00:02:16,370 اور اس نئے برانڈ ہے سال - study.cs50.net ہے. 42 00:02:16,370 --> 00:02:20,110 آپ اسے باہر کی جانچ پڑتال نہیں ہوا ہے تو، میں انتہائی آپ کو ایسا مشورہ ہے کہ. 43 00:02:20,110 --> 00:02:21,100 آپ کو ایک موضوع کو منتخب کرنے کے لئے حاصل. 44 00:02:21,100 --> 00:02:23,040 ہم وہاں پر موضوعات کے درجنوں ہے. 45 00:02:23,040 --> 00:02:24,770 تو مثال کے طور پر، آپ کے افعال کو منتخب. 46 00:02:24,770 --> 00:02:27,270 یہ آپ کو کچھ سلائڈ دیتا ہے اور افعال پر نوٹ. 47 00:02:27,270 --> 00:02:31,190 وہ اصل میں سلائڈ ہیں کی TFs کے دوران استعمال کرنے کے لئے حوصلہ افزائی کی جاتی ہماری 48 00:02:31,190 --> 00:02:32,710 کے سیکشن میں پیش پیش. 49 00:02:32,710 --> 00:02:35,040 نمٹنے کے لئے تجاویز اور ترکیبیں بھی ہے کام کرتا ہے، اور وہاں کے ساتھ 50 00:02:35,040 --> 00:02:37,290 مدد ہے کہ پریکٹس کے مسائل آپ کے افعال کے ساتھ کام. 51 00:02:37,290 --> 00:02:41,500 ہم نے بھی مختصر طور پر کرنے کے لئے آپ کے لنکس دے کام کرتا ہے اور بار ہے کہ کام کرتا ہے 52 00:02:41,500 --> 00:02:42,750 درس میں آئے ہیں. 53 00:02:42,750 --> 00:02:46,550 ایسا study.cs50.net، نئے برانڈ سال کے، ایک تصوراتی، بہترین وسائل. 54 00:02:46,550 --> 00:02:52,180 >> اگلا، میں دستی ہے جس میں انسان، ہے، تم پر چلا سکتے ہیں کمانڈ 55 00:02:52,180 --> 00:02:52,770 کمانڈ لائن. 56 00:02:52,770 --> 00:02:57,880 تو آپ کو ایک کے بارے میں کوئی سوال ہے تو کمانڈ، مثال کے طور پر، رانڈ، جو ہم 57 00:02:57,880 --> 00:03:00,900 سیکشن کے دوران گزشتہ ہفتے کا سامنا کرنا پڑا اور آپ کا امکان میں سامنا کرنا پڑا ہے 58 00:03:00,900 --> 00:03:05,380 کے ذریعے جا رہا ہے جب آپ کا مسئلہ سیٹ کوڈ پیدا، لیکن آپ کو آدمی ٹائپ 59 00:03:05,380 --> 00:03:09,980 رانڈ، آپ کے صفحے مل جائے گا کہ رانڈ کے بارے میں آپ سب کو بتاتا ہے. 60 00:03:09,980 --> 00:03:14,040 یہ لیتا ہے آپ کو دیتا ہے یہ لیتا ہے پیرامیٹرز، کے طور پر بھی واپسی 61 00:03:14,040 --> 00:03:16,530 قسم اور ایک مختصر وضاحت اس تقریب کی. 62 00:03:16,530 --> 00:03:17,500 >> تو رانڈ چیک. 63 00:03:17,500 --> 00:03:22,270 یہ، تھوڑی wordy اور مبہم ہو سکتا ہے تو کبھی کبھی مجھے لگتا ہے کہ تلاش 64 00:03:22,270 --> 00:03:26,150 بس میں جاننا چاہتے ہیں ہیں Googling جواب تلاش کرنے کا بہترین طریقہ. 65 00:03:26,150 --> 00:03:27,940 تو گوگل کے ساتھ عمل. 66 00:03:27,940 --> 00:03:28,600 گوگل میں اچھی حاصل. 67 00:03:28,600 --> 00:03:30,600 یہ آپ کی سب سے اچھی دوست بن جائے گا. 68 00:03:30,600 --> 00:03:34,300 >> کے ساتھ ساتھ گوگل، آپ اسے تلاش نہیں کر سکتے ہیں گوگل پر، cs50.net/discuss، یہ ہے 69 00:03:34,300 --> 00:03:35,550 فورم. 70 00:03:35,550 --> 00:03:39,390 آپ سے ایک سوال ہے تو امکان ہے، ایک ہیں آپ 700 + ساتھیوں کی بھی ہے کہ 71 00:03:39,390 --> 00:03:42,110 سوال اور کہا ہے کہ ہو سکتا ہے یہ پہلے سے ہی بات چیت میں 72 00:03:42,110 --> 00:03:43,540 فورمز اور اس کا جواب دیا ہے. 73 00:03:43,540 --> 00:03:48,130 تو آپ کو ایک عام سوال یا ہے تو اگر آپ کو لگتا ہے کہ میں ایک سوال ہے 74 00:03:48,130 --> 00:03:52,300 شاید دوسرے لوگوں میں چلانے کے ہو سکتا ہے، cs50.net/discuss چیک. 75 00:03:52,300 --> 00:03:55,450 >> آخر میں، گزشتہ دو، اگر تم چاہو تو ایک حقیقی انسان، دفتر سے بات 76 00:03:55,450 --> 00:03:57,770 جمعہ کے ذریعے پیر کے روز گھنٹے. 77 00:03:57,770 --> 00:04:00,850 آن لائن دفتری اوقات بھی ہے توسیع کے طالب علموں کے لئے. 78 00:04:00,850 --> 00:04:04,370 ، اور آخری لیکن یقینی طور پر کم از کم نہیں مجھے، فجائیہ نقطہ. 79 00:04:04,370 --> 00:04:05,960 تم میرے تمام رابطے کی معلومات ہیں. 80 00:04:05,960 --> 00:04:11,940 آپ کو کسی چیز کی ضرورت ہو، تو براہ مہربانی کبھی نہیں مجھ سے رابطہ کرنے میں سنکوچ. 81 00:04:11,940 --> 00:04:14,020 ہمیشہ ایسا کرنے کے لئے آزاد محسوس کرتے ہیں. 82 00:04:14,020 --> 00:04:17,490 تم میں سے بہت کم Gchat پر شامل کر لیا ہے، تو یہ، مایوس کن رہا ہے 83 00:04:17,490 --> 00:04:20,410 لیکن امید ہے کہ اس کے درمیان تبدیل کر دیں گے یہ اور اگلے حصے. 84 00:04:20,410 --> 00:04:22,105 اب تک وسائل پر کوئی سوال؟ 85 00:04:22,105 --> 00:04:25,670 86 00:04:25,670 --> 00:04:27,450 عظیم. 87 00:04:27,450 --> 00:04:34,280 >> آخر میں، ایک اور پلگ ان کے لئے رائے، sayat.me/cs50. 88 00:04:34,280 --> 00:04:37,050 تم میرے گمنام رائے دے سکتے ہیں میں کر رہا ہوں کہ کس طرح. 89 00:04:37,050 --> 00:04:38,320 کہ گزشتہ ہفتے واقعی مددگار تھا. 90 00:04:38,320 --> 00:04:41,890 میں تم لوگوں سے تبصرے کے ایک جوڑے کی ہے صحیح سیکشن، کے علاوہ کی طرف سے کے بعد 91 00:04:41,890 --> 00:04:44,750 دیکھا جو دوسرے طالب علموں کو ہفتے کے دوران، اور یہ 92 00:04:44,750 --> 00:04:46,830 ناقابل یقین حد تک مددگار تھے. 93 00:04:46,830 --> 00:04:50,250 میں کوشش اور میرے استعمال کا محدود کرنے کے لئے جا رہا ہوں لفظ "، میٹھی،" لیکن میں دکھایا جائے گا میری 94 00:04:50,250 --> 00:04:52,410 جوش و جذبے اور جوش و خروش دوسرے طریقوں سے. 95 00:04:52,410 --> 00:04:56,550 لیکن دیگر اضافی تھے اہم feedbacks کی، 96 00:04:56,550 --> 00:04:57,600 pluses اور ڈیلٹا دونوں. 97 00:04:57,600 --> 00:05:00,480 تو، میں تم لوگوں کو رائے دینے براہ مہربانی آپ کا مسئلہ سیٹ پر. 98 00:05:00,480 --> 00:05:01,790 میرے رائے دینے کے لئے آزاد محسوس کرتے ہیں میری تعلیم پر. 99 00:05:01,790 --> 00:05:04,010 میں تم لوگوں کے لئے یہاں ہوں. 100 00:05:04,010 --> 00:05:05,270 >> عظیم. 101 00:05:05,270 --> 00:05:07,020 اس کے لئے میں ہے ہے پہلے حصے. 102 00:05:07,020 --> 00:05:08,565 کسی کو کسی بھی ہے سوال اب تک؟ 103 00:05:08,565 --> 00:05:12,370 104 00:05:12,370 --> 00:05:14,640 اور میں نے کے لئے ایک نوٹ ہے کنٹرول سینٹر. 105 00:05:14,640 --> 00:05:21,200 توسیع کے طالب علموں نے مجھے پیغام دیا ہے وہ کسی بھی آڈیو نہیں مل رہے ہیں، کہہ رہے ہیں، 106 00:05:21,200 --> 00:05:23,870 لیکن اس کو ٹھیک کرنے کے لئے میری طاقت سے باہر ہے. 107 00:05:23,870 --> 00:05:25,280 تو امید ہے کہ، کہ ہو جاتا ہے جلد ہی حل کیا. 108 00:05:25,280 --> 00:05:28,850 آپ آن لائن دیکھ رہے ہیں، ہیلو، لیکن تم نے مجھے سنا نہیں کر سکتے ہیں. 109 00:05:28,850 --> 00:05:33,860 >> تو سب سے پہلے، ہم جا رہے ہیں gdb کے ذریعے جانے کے لئے. 110 00:05:33,860 --> 00:05:37,100 GDB، میں نے پہلے بھی اشارہ دیا کے طور پر، بگ آلہ ہے 111 00:05:37,100 --> 00:05:39,040 printf کے مقابلے میں بہت بہتر. 112 00:05:39,040 --> 00:05:44,700 اگر ایسا ہے تو، GDB، لوگ آپ کے ساتھ شروع کرنے کے لئے آپ کو آپ کے آلے کو کھولنے کے لئے چاہتے ہیں، 113 00:05:44,700 --> 00:05:49,070 اور میں آپ کو ای میل اس فائل لے پہلے - اس فائل بھی ہو جائے گا 114 00:05:49,070 --> 00:05:51,940 تھوڑا سا میں آن لائن دستیاب - 115 00:05:51,940 --> 00:05:55,700 اور GDB چلانے. / فائل کے نام. 116 00:05:55,700 --> 00:05:58,580 سب سے پہلے، کورس کے، آپ کو مرتب کرنے کے لئے ہے GDB صرف کام کرتا ہے فائل 117 00:05:58,580 --> 00:05:59,890 فائلوں. 118 00:05:59,890 --> 00:06:02,300 >> لیکن کیا تم نے کبھی شروع کرنے کے لئے چاہتے ہیں تو GDB، تم کرتے ہو سب سے پہلی چیز، 119 00:06:02,300 --> 00:06:04,550 آپ GDB. / کیسر چلانے. 120 00:06:04,550 --> 00:06:08,340 تو ہے کہ ہم اس پروگرام کا نام ہے اب اس کے ساتھ جانے کے لئے جا. 121 00:06:08,340 --> 00:06:12,810 تو میں کیسر، بنانے لکھنے جا رہا ہوں جس مجھے ایک executable فائل دے گا 122 00:06:12,810 --> 00:06:14,100 یہاں سبز رنگ میں روشنی ڈالی. 123 00:06:14,100 --> 00:06:19,250 اور پھر میں نے GDB. / سیزر کو چلانے کے لئے جا رہا ہوں. 124 00:06:19,250 --> 00:06:19,810 >> اور تم وہاں جاؤ. 125 00:06:19,810 --> 00:06:24,540 ہم کچھ متن مجھ سے کہہ رہا ہے کہ دیکھ، مجھے دے GDB کے ورژن، کے بارے میں 126 00:06:24,540 --> 00:06:27,570 پھر کچھ وارنٹی کی معلومات، اور ہم ترتیب لگتا ہے جو جی ڈی پی کے فوری طور پر، ہے 127 00:06:27,570 --> 00:06:29,350 کی ہماری کمانڈ لائن فوری طور پر کی طرح، لیکن آپ اسے کھولیں دیکھ 128 00:06:29,350 --> 00:06:32,510 قوس، GDB، قریبی قوس. 129 00:06:32,510 --> 00:06:36,520 ہم اس فائل کو جاری رکھنے اور ڈبگ سے پہلے میں آپ سب کے لئے بھیجا ہے، کی کو دیکھو 130 00:06:36,520 --> 00:06:40,220 کچھ مفید حکم دیتا ہے تو ہم نے ایک احساس ہے کیا ہم پورا کرنے کے لئے جا رہے ہیں. 131 00:06:40,220 --> 00:06:45,060 >> یہ حکم دیتا ہے میں یہاں درج کر رہے ہیں میں عام طور پر ان کا استعمال ہے جس میں حکم. 132 00:06:45,060 --> 00:06:50,230 تو میں چلانے کی طرف سے اپنے پروگرام شروع پروگرام کے GBD. / نام، 133 00:06:50,230 --> 00:06:51,360 اس صورت میں، کیسر. 134 00:06:51,360 --> 00:06:57,430 اور پھر پہلی بات میں 99.9 فیصد کرنا وقت کی قسم وقفے کا مطلب ہے. 135 00:06:57,430 --> 00:06:59,070 یہ اہم میں ایک بریک پوائنٹ کا تعین کرتا ہے. 136 00:06:59,070 --> 00:07:03,260 بنیادی طور پر، آپ وہاں کیا کر رہے ہیں پروگرام کو روکنے کے لئے جا رہا ہے 137 00:07:03,260 --> 00:07:06,100 اہم تو آپ یہ لائن کی تحقیقات شروع کر سکتے ہیں لائن کی طرف سے، بلکہ تمام چلانے سے 138 00:07:06,100 --> 00:07:07,040 راستے کے ذریعے. 139 00:07:07,040 --> 00:07:09,730 آپ میں مختلف مقامات پر توڑ سکتا ہے آپ کے کوڈ، لیکن اہم عام طور پر ہے ایک 140 00:07:09,730 --> 00:07:11,870 شروع کرنے کے لئے اچھی جگہ. 141 00:07:11,870 --> 00:07:14,840 >> میں چلانے اگلا کمانڈ چلائیں ہے. 142 00:07:14,840 --> 00:07:17,400 اس پروگرام کو چلانے کے شروع ہوتا ہے، اور آپ کمانڈ لائن میں داخل کرنے کی ضرورت ہے 143 00:07:17,400 --> 00:07:19,090 دلائل، آپ کو یہ ہے کہ کمانڈ چلائیں. 144 00:07:19,090 --> 00:07:20,500 دلائل کے ساتھ چلائیں. 145 00:07:20,500 --> 00:07:25,000 ہم ایک ورژن پر جا رہے ہیں تو بعد پروگرام آپ کے لوگ ہے جو سی، کے 146 00:07:25,000 --> 00:07:26,160 pset کے دونوں کے لئے لکھا - 147 00:07:26,160 --> 00:07:29,880 اس میں سے ایک، کورس کے، کچھ کیڑے ہے امید ہے کہ ہم تلاش کر لیں گے کہ اس میں - 148 00:07:29,880 --> 00:07:32,810 ہم نے کچھ کمانڈ کے ساتھ چلائیں چلائیں جا رہے ہیں لائن کے دلائل کی وجہ سے قیصر، 149 00:07:32,810 --> 00:07:34,860 تم لوگوں کو مسئلہ کے مطابق جانتے ہیں رپورٹ مقرر، کچھ لیتا ہے 150 00:07:34,860 --> 00:07:36,380 کمانڈ لائن کے دلائل. 151 00:07:36,380 --> 00:07:40,000 >> حکم دیتا ہے کے اگلے دو، اگلا ایک اصل اگلا کہا جاتا ہے. 152 00:07:40,000 --> 00:07:42,470 یہ ایک لائن کی طرف سے آپ کو لائن میں لیتا ہے آپ کے پروگرام کے ذریعے. 153 00:07:42,470 --> 00:07:45,800 درج کریں تاکہ تو ن مار لیتا ہے اگلی لائن، عمل 154 00:07:45,800 --> 00:07:46,880 پچھلے لائن. 155 00:07:46,880 --> 00:07:49,440 مرحلہ پر لے جاتا ہے نہ صرف اگلی لائن، لیکن یہ 156 00:07:49,440 --> 00:07:51,070 آپ کے اندر کام کرتا ہے لیتا ہے. 157 00:07:51,070 --> 00:07:54,310 تو آپ کو ایک تقریب میں لکھا ہے تو آپ کے کوڈ یا آپ کی چاہتے ہیں ایک 158 00:07:54,310 --> 00:07:57,820 میں، مثال کے طور پر، اگر آپ کا مارا، کر سکتے ہیں اور بلکہ کی اگلی لائن میں جانے کی نسبت 159 00:07:57,820 --> 00:08:02,390 تم صحیح کے ذریعے جا رہے ہیں کہ فائل اب، آپ کو اصل میں قدم گے 160 00:08:02,390 --> 00:08:04,670 اس تقریب میں اور اس کے کوڈ کو دیکھنے کے. 161 00:08:04,670 --> 00:08:12,300 >> فہرست دوستانہ بہت صارف، آپ کو ظاہر کرتا ہے شکل، کے ارد گرد 10 یا تو لائنز 162 00:08:12,300 --> 00:08:14,940 آپ فی الحال آپ کے کوڈ میں جہاں تو اگر آپ اصل فائل دیکھ سکتے ہیں 163 00:08:14,940 --> 00:08:17,810 بلکہ واپس تبادلہ کرنے کے لئے اور سے آگے مختلف خیالات کے درمیان. 164 00:08:17,810 --> 00:08:21,890 پرنٹ، printf طرح ہے اس کے نام کا مطلب ہے کے طور پر. 165 00:08:21,890 --> 00:08:24,020 جو ایک متغیر کے برابر ہے کیا آپ کو دکھاتا ہے. 166 00:08:24,020 --> 00:08:25,870 >> معلومات مقامی لوگوں واقعی مددگار ہے. 167 00:08:25,870 --> 00:08:27,740 اس پرنٹ کی ایک خصوصی ورژن ہے. 168 00:08:27,740 --> 00:08:31,770 معلومات مقامی لوگوں کے مقامی کے تمام شوز متغیر، آپ کے لئے ان تمام پرنٹ 169 00:08:31,770 --> 00:08:33,380 فی الحال دستیاب ہیں. 170 00:08:33,380 --> 00:08:36,360 تو بجائے کرنے کے مقابلے میں عام طور پر میں، میں ہوں کہ چار متغیر پرنٹ 171 00:08:36,360 --> 00:08:39,929 میں ایک لوپ کے لئے، کے لئے میں ہوں تو کے بارے میں جاننا مثال کے طور پر، میں نے صرف معلومات مقامی لوگوں لکھنا، 172 00:08:39,929 --> 00:08:43,470 اور اس سے مجھے میری انسداد میں دکھائیں گے مجھے اس صف کے ساتھ ساتھ، برابر 173 00:08:43,470 --> 00:08:45,130 برابر پر کام کر رہے. 174 00:08:45,130 --> 00:08:47,530 >> آخر میں، جاری رکھیں. 175 00:08:47,530 --> 00:08:49,300 وقفے ٹائپ آپ کو روکتا ہے وقفے کے نقطہ پر. 176 00:08:49,300 --> 00:08:51,380 آپ کی طرف سے لائن کے ذریعے چل کر سکتے ہیں اگلا اور قدم کے ساتھ لائن. 177 00:08:51,380 --> 00:08:55,640 آپ کے اگلے پر چلتا پروگرام کو جاری نقطہ کو توڑنے یا تکمیل تو جب تک 178 00:08:55,640 --> 00:08:57,180 کوئی وقفے پوائنٹس ہیں. 179 00:08:57,180 --> 00:09:00,060 غیر فعال وقفے پوائنٹس کو ہٹا دیتا ہے اگر آپ مرکزی توڑ نے فیصلہ کیا 180 00:09:00,060 --> 00:09:01,890 نامناسب، آپ چاہتے ہیں کہیں اور یہ مقرر. 181 00:09:01,890 --> 00:09:05,090 اور آخر میں (ق)، چھوڑ، GDB سے باہر ہو جاتا ہے. 182 00:09:05,090 --> 00:09:10,784 >> تو اس پروگرام پر،. / کیسر، ہم جا رہے ہیں ابھی کے ذریعے دیکھو اور ہم 183 00:09:10,784 --> 00:09:13,490 تلاش کرنے کے لئے GDB استعمال کرنے کے لئے جا رہے ہیں اس پروگرام میں کیڑے. 184 00:09:13,490 --> 00:09:18,110 میں اس کے ساتھ اس سے پہلے اس پروگرام بھاگ گیا 50 کی جانچ پڑتال کریں، اور میں ایک برانبنگ ہے. 185 00:09:18,110 --> 00:09:22,310 سب کچھ اس کے مرتب، موجود، یہ ٹیسٹ کی ایک بہت منظور، لیکن 186 00:09:22,310 --> 00:09:27,950 کسی وجہ سے، یہ پانچویں پاس نہیں تھا میں BARFOO، تمام بڑے حروف، رخ ٹیسٹ، 187 00:09:27,950 --> 00:09:33,350 ای ڈی یو میں آر آر، تمام بڑے حروف، ایک اہم کے طور پر تین کا استعمال کرتے ہوئے. 188 00:09:33,350 --> 00:09:34,090 میں نے بہت قریب ہے. 189 00:09:34,090 --> 00:09:35,410 میں نے ایک خط کی طرف سے ہے. 190 00:09:35,410 --> 00:09:37,340 تو یہاں میں کچھ چھوٹی سی غلطی ہے. 191 00:09:37,340 --> 00:09:38,070 میں اپنے کوڈ کے ذریعے دیکھا ہے. 192 00:09:38,070 --> 00:09:38,850 مجھے یہ سمجھ نہیں کر سکتے ہیں. 193 00:09:38,850 --> 00:09:41,740 امید ہے، آپ لوگ میری مدد کر سکتے ہیں اس مسئلے ہے اعداد و شمار کیا. 194 00:09:41,740 --> 00:09:44,610 >> تو ہے کہ ہم خامی ہے کے لئے تلاش. 195 00:09:44,610 --> 00:09:46,090 کی GDB میں منتقل کرتے ہیں. 196 00:09:46,090 --> 00:09:51,100 ایک بار پھر، میں، GDB. / کیسر چلائے گئے تو اب ہم GDB میں ہیں. 197 00:09:51,100 --> 00:09:54,290 اور سب سے پہلے کیا ہے مجھے کیا کرنا چاہئے بات؟ 198 00:09:54,290 --> 00:09:56,680 میں صرف GDB میں داخل ہے. 199 00:09:56,680 --> 00:10:00,316 کسی نے مجھے ایک اچھا دے داخل کرنے کا حکم. 200 00:10:00,316 --> 00:10:01,140 >> طالب علم: اہم توڑ. 201 00:10:01,140 --> 00:10:01,800 >> JASON HIRSCHHORN: اہم توڑ. 202 00:10:01,800 --> 00:10:02,900 تصوراتی، بہترین. 203 00:10:02,900 --> 00:10:03,560 کے اندر اس قسم کے ہیں 204 00:10:03,560 --> 00:10:06,390 تم لوگوں کو یہاں دیکھتے ہیں یا عمل کر سکتے ہیں آپ کے کمپیوٹر پر ساتھ ساتھ. 205 00:10:06,390 --> 00:10:09,410 اہم توڑ، اور آپ کو ایک نظر آئے گا وقفے کے نقطہ پر قائم کیا گیا تھا - 206 00:10:09,410 --> 00:10:12,340 اس نے مجھے کچھ عجیب میموری ایڈریس دیتا ہے، اور یہ بھی مجھ سے لائن نمبر دیتا ہے. 207 00:10:12,340 --> 00:10:15,310 میں نے اس فائل میں واپس نظر آئے تھے، تو میں اس اہم احساس کریں گے 208 00:10:15,310 --> 00:10:17,700 21 لائن پر ہوا. 209 00:10:17,700 --> 00:10:18,950 میں کیا چلانا چاہئے؟ 210 00:10:18,950 --> 00:10:22,970 211 00:10:22,970 --> 00:10:25,060 میرے پروگرام چلا رہا ہے؟ 212 00:10:25,060 --> 00:10:25,650 نمبر 213 00:10:25,650 --> 00:10:27,175 تو میں کیا چلانا چاہئے؟ 214 00:10:27,175 --> 00:10:27,520 >> طالب علم: چلائیں. 215 00:10:27,520 --> 00:10:28,050 >> JASON HIRSCHHORN: چلائیں. 216 00:10:28,050 --> 00:10:30,760 میں صرف چلائیں چلائیں، یا چاہئے میں نے کچھ دوسری چیزوں میں شامل کریں؟ 217 00:10:30,760 --> 00:10:31,960 >> طالب علم: دلیل کے ساتھ چلائیں. 218 00:10:31,960 --> 00:10:33,320 >> JASON HIRSCHHORN: کے ساتھ چلائیں کمانڈ دلائل. 219 00:10:33,320 --> 00:10:36,420 اور میں ایک بہت ہی خاص ٹھیک کر رہا ہوں کے بعد کیس، میں اس میں داخل ہونا چاہئے 220 00:10:36,420 --> 00:10:37,120 کمانڈ لائن کی دلیل. 221 00:10:37,120 --> 00:10:42,290 تو میں نے، پھر، ہے، جو، تین چلانے کروں گا میں چیک 50 سے ملا پیداوار. 222 00:10:42,290 --> 00:10:44,240 پروگرام شروع. 223 00:10:44,240 --> 00:10:45,420 ہم لائنوں کے ایک جوڑے کے ذریعے جانا. 224 00:10:45,420 --> 00:10:47,700 اب آپ ہم 21 لائن پر ہیں دیکھیں گے کہ. 225 00:10:47,700 --> 00:10:49,200 کس طرح ہم نے 21 لائن پر ہیں کہ جانتے ہیں؟ 226 00:10:49,200 --> 00:10:52,170 کیونکہ آپ کو بائیں طرف نظر آتے ہیں میرے ٹرمنل ونڈو کی، وہاں 227 00:10:52,170 --> 00:10:53,120 یہ لائن 21 کا کہنا ہے کہ. 228 00:10:53,120 --> 00:10:57,010 اور یہ کہ، اصل میں، مجھے فراہم کرتا ہے 21 لائن پر ہے کہ کوڈ. 229 00:10:57,010 --> 00:10:58,440 تو میں نے پہلے misspoke. 230 00:10:58,440 --> 00:10:59,770 مین 21 لائن پر اصل میں نہیں ہے. 231 00:10:59,770 --> 00:11:02,000 مین 21 سے اوپر کی لائنوں کی ایک جوڑے کی ہے. 232 00:11:02,000 --> 00:11:04,300 لیکن 21 لائن پر، ہے ہم کہاں توڑ رہے ہو. 233 00:11:04,300 --> 00:11:06,280 کوڈ کی اس لائن ہے ابھی تک پھانسی نہیں. 234 00:11:06,280 --> 00:11:06,890 یہ ضروری ہے. 235 00:11:06,890 --> 00:11:09,120 آپ کو دیکھ لائن نہیں ہے ابھی تک پھانسی دے دی گئی. 236 00:11:09,120 --> 00:11:12,650 اس کوڈ کی اگلی لائن ہے آپ پر عمل کرنے کے بارے میں ہیں. 237 00:11:12,650 --> 00:11:15,860 >> آپ لوگ ہیں تو اگلی لائن، ساتھ شاید واقف، یہ ہے 238 00:11:15,860 --> 00:11:20,070 حالت میں ہے تو دیکھنے کے لئے کی جانچ پڑتال ایک کمانڈ لائن کی دلیل میں داخل. 239 00:11:20,070 --> 00:11:22,140 اور میں ایک، دوسرے کیا ہے یہ ہے کہ ایسا کا حصہ؟ 240 00:11:22,140 --> 00:11:23,457 ایک میں کیا ہے؟ 241 00:11:23,457 --> 00:11:24,950 >> طالب علم: ایک عددی کے لئے اس کو تبدیل کرنے. 242 00:11:24,950 --> 00:11:25,450 >> JASON HIRSCHHORN: معاف کیجئے گا؟ 243 00:11:25,450 --> 00:11:27,400 >> طالب علم: اس کو تبدیل کرنے کی ہے ایک عدد صحیح دلیل. 244 00:11:27,400 --> 00:11:30,890 >> JASON HIRSCHHORN: تو میں تبدیلیاں کرنے کے لئے ARG ایک عددی کے لئے ایک تار سے V1. 245 00:11:30,890 --> 00:11:32,140 اور پھر یہ کیا جانچ پڑتال کی ہے؟ 246 00:11:32,140 --> 00:11:35,414 247 00:11:35,414 --> 00:11:37,112 >> طالب علم: ایک دوسری ہے تو کمانڈ لائن کی دلیل، ایک طرف 248 00:11:37,112 --> 00:11:38,100 پروگرام چلانے سے. 249 00:11:38,100 --> 00:11:39,460 >> JASON HIRSCHHORN: اور کیا ہے اس کے دوسرے نصف حصے 250 00:11:39,460 --> 00:11:41,220 بولین اظہار کی جانچ پڑتال؟ 251 00:11:41,220 --> 00:11:42,540 یہاں یہ حصہ، ایک میں؟ 252 00:11:42,540 --> 00:11:44,080 >> طالب علم: یہ منفی ہے تو. 253 00:11:44,080 --> 00:11:45,380 >> JASON HIRSCHHORN: ضرور کیا بنا؟ 254 00:11:45,380 --> 00:11:47,120 >> طالب علم: اس بات کو یقینی بنانے اصل میں، مثبت، ہے. 255 00:11:47,120 --> 00:11:47,650 >> JASON HIRSCHHORN: بالکل. 256 00:11:47,650 --> 00:11:50,600 یہ تو دیکھنے کے لئے جانچ پڑتال کی ہے یہ منفی ہے، منفی، اور اگر، مجھے 257 00:11:50,600 --> 00:11:53,220 ایک احساس اگلی لائن کی طاقت ہے مجھے چللا صارف میں ہو. 258 00:11:53,220 --> 00:11:55,930 تو اس لائن پر عمل کرنے کی آخر مارا. 259 00:11:55,930 --> 00:11:59,925 ہم اس لائن کو نظر نہیں آتا کہ آپ لوگ شاید میں چللا کو دیکھنے کے لئے امید کی جاتی ہے 260 00:11:59,925 --> 00:12:03,030 صارف اور اس کے بعد واپس لوٹنے، کیونکہ اس لائن پر عمل نہیں کیا. 261 00:12:03,030 --> 00:12:03,840 میں 3 میں داخل. 262 00:12:03,840 --> 00:12:06,860 تو میں، حقیقت میں، دو حکم میں داخل کیا لائن کے دلائل، اور 3 ہے 263 00:12:06,860 --> 00:12:07,610 صفر سے زیادہ. 264 00:12:07,610 --> 00:12:09,950 تو ہم اس لائن کو دیکھا، ہم پھانسی دے دی، لیکن ہم قدم نہیں تھا 265 00:12:09,950 --> 00:12:11,300 اگر حالت کے اندر. 266 00:12:11,300 --> 00:12:17,060 >> تو اب، اگلا، میں نے کی ترتیب کو دیکھ INT اہم ایک میں V1 ARG برابر. 267 00:12:17,060 --> 00:12:18,840 تو اس نے مجھے ایک متغیر اہم پیدا کر رہا ہے. 268 00:12:18,840 --> 00:12:22,450 تو میں اب اہم پرنٹ ہیں، کیونکہ کہ آپ کو دیکھنے کے لئے کی اجازت دیتا ہے 269 00:12:22,450 --> 00:12:26,040 قیمت متغیر کے اندر، اہم 47 کے برابر ہے. 270 00:12:26,040 --> 00:12:28,810 یہ، کورس کے عجیب ہے، لیکن میں نہیں ہے، کیونکہ یہ ہے 271 00:12:28,810 --> 00:12:30,490 ابھی تک اس لائن کو پھانسی دے دی. 272 00:12:30,490 --> 00:12:35,880 میں ن مارا تو اب، اگر، اس لائن کو پھانسی اور پرنٹ اہم ہے، اہم، 3 کے برابر ہو گا 273 00:12:35,880 --> 00:12:37,740 ہم اس کے برابر کرنے کے لئے توقع ہے جس میں. 274 00:12:37,740 --> 00:12:41,170 >> تو پھر، GDB، لائن میں ابھی تک آپ کو پھانسی نہیں کیا ہے دیکھنے کے. 275 00:12:41,170 --> 00:12:44,850 آپ ن یا S یا ایک نمبر مارا ہے اصل میں دیگر حکم دیتا ہے 276 00:12:44,850 --> 00:12:46,610 اس لائن کو پھانسی. 277 00:12:46,610 --> 00:12:47,380 پرنٹ اہم. 278 00:12:47,380 --> 00:12:48,280 3 چابی ہے. 279 00:12:48,280 --> 00:12:49,750 اب تک تو اچھا ہے. 280 00:12:49,750 --> 00:12:51,000 جملہ سادہ متن ہے. 281 00:12:51,000 --> 00:12:52,270 کی اس لائن پر عمل کرتے ہیں. 282 00:12:52,270 --> 00:12:53,970 میں صارف سے ایک تار ہو رہا ہے. 283 00:12:53,970 --> 00:12:58,690 >> میرا چیک 50 میں دیکھتے ہیں، میں نے BARFOO تمام بڑے حروف میں داخل، تو 284 00:12:58,690 --> 00:13:01,330 کہ میں داخل کریں گے کیا ہے. 285 00:13:01,330 --> 00:13:07,300 اب میں سادہ متن پرنٹ. 286 00:13:07,300 --> 00:13:08,610 تم نے اسے ایک تار کے برابر نظر آئے گا. 287 00:13:08,610 --> 00:13:11,100 یہ میرے کسی دوسرے عجیب شش اعشاری دیتا ہے تعداد، لیکن اس میں کرتا ہے 288 00:13:11,100 --> 00:13:13,620 حقیقت یہ ہے کہ میری سٹرنگ BARFOO کا کہنا ہے کہ. 289 00:13:13,620 --> 00:13:19,308 میں چابی میں برابری کیا دیکھنا چاہتے ہیں تو اس نقطہ نظر، میں کس طرح اہم چیک کر سکتے ہیں؟ 290 00:13:19,308 --> 00:13:20,710 >> طالب علم: پرنٹ اہم. 291 00:13:20,710 --> 00:13:22,010 >> JASON HIRSCHHORN: پرنٹ اہم، بالکل. 292 00:13:22,010 --> 00:13:23,260 اور اصل میں، ایک شارٹ کٹ ہے. 293 00:13:23,260 --> 00:13:25,910 آپ کو پرنٹ ٹائپ کا تھکا ہوا ملتا ہے، آپ کو صرف P ٹائپ کر سکتے ہیں. 294 00:13:25,910 --> 00:13:28,340 تو P اہم ایک ہی عین مطابق بات کرتا ہے. 295 00:13:28,340 --> 00:13:29,730 اور پھر، میں نے اس کے 3 برابر دیکھ. 296 00:13:29,730 --> 00:13:34,760 >> میں کیا اہم دونوں باہر تلاش کرنے کے لئے چاہتے تھے اور BARFOO ایک ہی وقت میں برابری 297 00:13:34,760 --> 00:13:37,215 لیکن میں ہر ٹائپ کی تھکا ہوا تھا ایک باہر انفرادی طور پر، میں نے 298 00:13:37,215 --> 00:13:38,590 معلومات مقامی لوگوں کے ٹائپ کر سکتے ہیں. 299 00:13:38,590 --> 00:13:41,170 یہ میرے اہم برابر 3 دیتا ہے. 300 00:13:41,170 --> 00:13:42,500 سادہ متن BARFOO برابر. 301 00:13:42,500 --> 00:13:45,265 یہ بھی میرے ان دو عجیب چیزوں دیتا ہے سب سے اوپر، اس متغیر میں اور 302 00:13:45,265 --> 00:13:46,590 اس متغیر (ن). 303 00:13:46,590 --> 00:13:48,460 >> وہ اصل میں موجودہ ہیں میرا بنیادی پروگرام میں. 304 00:13:48,460 --> 00:13:51,280 ہم، ابھی تک ان کا سامنا نہیں ہے لیکن ایک جائزہ کے طور پر، ان لوگوں کو 305 00:13:51,280 --> 00:13:52,880 میری لوپ کے لئے موجود ہیں. 306 00:13:52,880 --> 00:13:55,360 تو اب، وہ کچھ عجیب برابر تعداد وہ نہیں ہے کیونکہ 307 00:13:55,360 --> 00:13:58,300 ابھی initialized ہے، لیکن وہ اب بھی موجود ہیں یاد میں، تو وہ صرف قائم کر رہے ہیں 308 00:13:58,300 --> 00:14:00,220 کچھ ردی کی ٹوکری کی قیمت پر. 309 00:14:00,220 --> 00:14:02,890 لیکن ہم سادہ میں اہم دیکھتے ہیں وہیں متن. 310 00:14:02,890 --> 00:14:06,390 >> تو میں اس لائن پر عمل کرنے جا رہا ہوں، لائن 34، کے لئے لوپ. 311 00:14:06,390 --> 00:14:08,220 ہم میں کودنے کے لئے جا رہے ہیں ن مارنے کی طرف سے لوپ کے لئے. 312 00:14:08,220 --> 00:14:10,050 اور ہم لوپ کے لئے اندر ہو. 313 00:14:10,050 --> 00:14:11,360 ہم اپنے سب سے پہلے چیک میں ہیں. 314 00:14:11,360 --> 00:14:14,300 اور پھر، ان کی طرح نظر آنا چاہئے یہ ایک تھا کیونکہ آپ سے واقف 315 00:14:14,300 --> 00:14:18,080 کیسر لکھا گیا پروگرام ہے کہ، لیکن پھر، بگ کے کچھ قسم ہے. 316 00:14:18,080 --> 00:14:21,940 >> میں ہوں کیونکہ اور اب میں، معلومات مقامی لوگوں کرتے ہیں لوپ کے لئے کہ اندر، آپ کو نظر آئے گا 317 00:14:21,940 --> 00:14:23,900 ہم امید کرتے ہیں کے طور پر میں، صفر کے برابر ہے. 318 00:14:23,900 --> 00:14:26,820 کہ ہم پر یہ قائم ہے اور ابتدا کیا ہے یہ لوپ کے لئے میں. 319 00:14:26,820 --> 00:14:27,560 ن 6 برابر ہے. 320 00:14:27,560 --> 00:14:30,700 ہم نے مقرر کی وجہ سے یہ بھی سمجھ میں آتا ہے سادہ متن کے strlen کی کے لئے اس. 321 00:14:30,700 --> 00:14:34,270 تو میں نے معلومات مقامی لوگوں یا پرنٹ کرنے کے لئے پسند متغیر اکثر اس بات کو یقینی بنانے کے لئے 322 00:14:34,270 --> 00:14:36,370 ہر چیز ہمیشہ کیا ہے میں اس کے برابر کرنے کے لئے کی توقع. 323 00:14:36,370 --> 00:14:39,800 اس صورت میں، سب کچھ ہے میں اس کے برابر کرنے کے لئے توقع ہے. 324 00:14:39,800 --> 00:14:41,850 >> تو کے ذریعے منتقل شروع یہ لوپ کے لئے. 325 00:14:41,850 --> 00:14:45,715 میں ہوں لائن لائن 36 ہے، تو سادہ متن میں ایک اور سادہ سے زیادہ ہے 326 00:14:45,715 --> 00:14:48,540 متن میں سے کم یا Z کے برابر ہے. 327 00:14:48,540 --> 00:14:51,880 میں اپنے مسئلہ میری پہلی کے ساتھ نہیں ہے خط، یہ دوسری خط کے ساتھ ہے. 328 00:14:51,880 --> 00:14:56,290 ہم چیک میں واپس دیکھو 50، بی ای ٹھیک جاتا ہے. 329 00:14:56,290 --> 00:14:59,010 میں ایک لے اور کے طور پر اس جا رہا ہوں ایک ایک، ڈی، لہذا یہ نہیں بدلتے 330 00:14:59,010 --> 00:15:00,200 کچھ کے ساتھ غلط ہے دوسرے خط. 331 00:15:00,200 --> 00:15:01,640 تو میں منتقل کرنے کے لئے جا رہا ہوں وہاں ایک دوسری میں. 332 00:15:01,640 --> 00:15:06,030 >> لیکن میں کیا سادہ جانچ کرنا چاہتے ہیں کیا تو متن میں اس خاص طور پر برابری 333 00:15:06,030 --> 00:15:07,760 کیس، میں نے اسے کیا ہونا چاہئے؟ 334 00:15:07,760 --> 00:15:10,980 سادہ متن میں اس میں برابر کیا لوپ کے لئے کے ذریعے پہلے مرحلے؟ 335 00:15:10,980 --> 00:15:14,046 336 00:15:14,046 --> 00:15:15,110 >> طالب علم: زیرو؟ 337 00:15:15,110 --> 00:15:16,510 >> JASON HIRSCHHORN: میں کے سادہ متن؟ 338 00:15:16,510 --> 00:15:21,180 تو یہ، میں، کورس کے دارالحکومت بی ہونا چاہئے صفر کے برابر ہے، لیکن سادہ متن 339 00:15:21,180 --> 00:15:25,600 بریکٹ صفر بند بریکٹ بی کے برابر ہے کیونکہ ڈور، ہم نے گزشتہ ہفتے دیکھا، 340 00:15:25,600 --> 00:15:28,650 صف ہیں، تو ہم ہو رہے ہیں اس سے پہلے کردار. 341 00:15:28,650 --> 00:15:34,960 تو پھر، میں سادہ متن طباعت اگر میں، میں، حقیقت میں، کردار ملتا ہے 342 00:15:34,960 --> 00:15:36,560 B. اور یہ درست، صاف ہے؟ 343 00:15:36,560 --> 00:15:40,380 میں اصل میں سادہ متن میں نہیں ہے یہی ہے جو میں مقرر متغیرات میں سے ایک نہیں ہے 344 00:15:40,380 --> 00:15:42,950 یا initialized ہے، لیکن آپ کو پرنٹ کر سکتے ہیں چیزوں کی ایک پوری میزبان باہر 345 00:15:42,950 --> 00:15:45,640 آپ کرنا چاہتے ہیں. 346 00:15:45,640 --> 00:15:47,340 >> لیکن کے ذریعے منتقل. 347 00:15:47,340 --> 00:15:50,050 سادہ متن میں ایک سے زیادہ ہے اور اگر سادہ متن میں سے کم یا برابر ہے 348 00:15:50,050 --> 00:15:53,290 ہم کیونکہ Z، جو واضح طور پر سچ ہے میں چلانے کے لئے جا رہا ہوں سرمایہ بی 349 00:15:53,290 --> 00:15:54,230 اس پر کچھ کمانڈ. 350 00:15:54,230 --> 00:15:58,530 ہم نے گزشتہ ہفتے کہ ریاضی دیکھا، تو ہم کریں گے یہ کام کرتا ہے حاصل کی جاچکی کے لئے اسے لے لو 351 00:15:58,530 --> 00:16:00,900 حق 50 کی جانچ پڑتال کے مطابق. 352 00:16:00,900 --> 00:16:03,720 >> یہ گھوبگھرالی منحنی خطوط وحدانی، سب سے پہلے ایک میں تو باہر نکلنے ظاہر ہوا ہے کہ 353 00:16:03,720 --> 00:16:07,030 حالت، دوسرا دکھایا میں لوپ کے لئے باہر نکلنے رہا ہوں. 354 00:16:07,030 --> 00:16:10,400 میں اگلے مارا اور جب تو اب، ہم دیکھیں گے ہم پھر لوپ کے لئے واپس پر ہیں. 355 00:16:10,400 --> 00:16:11,970 ہم کے ذریعے جا رہے ہیں پھر لوپ کے لئے. 356 00:16:11,970 --> 00:16:18,110 اصل میں دوسری میں قدم ہیں لوپ اور قسم کے لئے iteration کے 357 00:16:18,110 --> 00:16:20,520 معلومات مقامی لوگوں کے. 358 00:16:20,520 --> 00:16:22,190 >> تو ہم دوسرے iteration میں ہیں ہمارے لئے لوپ کے. 359 00:16:22,190 --> 00:16:24,530 میں ہم امید کرتے ہیں، جس میں 1 برابر. 360 00:16:24,530 --> 00:16:26,650 n ہم توقع ہے، جس میں 6 برابر ہے. 361 00:16:26,650 --> 00:16:28,810 کلیدی ہم امید کرتے ہیں، جس میں 3 کے برابر ہے. 362 00:16:28,810 --> 00:16:32,625 اور سادہ متن، آپ کو نظر آئے گا، برابر EARFOO اب، اب BARFOO نہیں کیونکہ 363 00:16:32,625 --> 00:16:37,930 ہمارے گزشتہ iteration میں، بی تھا سرمایہ ای تبدیل تو ہم کے بارے میں ہیں 364 00:16:37,930 --> 00:16:40,040 مسئلہ کا سامنا کرنے کے لئے، ایسا ہم جا رہے ہیں جہاں ہے 365 00:16:40,040 --> 00:16:41,130 بگ میں کودو. 366 00:16:41,130 --> 00:16:43,365 لیکن کسی کو کوئی سوال ہے ہم نے اب تک کیا کیا ہے کے بارے میں؟ 367 00:16:43,365 --> 00:16:46,770 368 00:16:46,770 --> 00:16:47,910 تصوراتی، بہترین. 369 00:16:47,910 --> 00:16:52,710 >> تو ہم تو اس پر عمل کرنے کے بارے میں ہیں حالت، میں نے بند کر دیا سادہ متن بریکٹ 370 00:16:52,710 --> 00:16:57,500 بریکٹ ایک سے زیادہ اور سادہ متن میں سے کم یا زیڈ کے برابر لیکن اس سے پہلے 371 00:16:57,500 --> 00:17:00,450 یہ ہے، کیونکہ میں اس میں جہاں میں نے کی طرف اشارہ کرنا چاہتے ہیں، میری غلطی ہے 372 00:17:00,450 --> 00:17:06,859 I. کے سادہ متن باہر کی پرنٹ باہر ڈال دو. 373 00:17:06,859 --> 00:17:12,020 یہ کردار ایک کے برابر ہوتا ہے، تاکہ اب تک، سب کچھ ٹھیک اور اچھا ہے لگتا ہے. 374 00:17:12,020 --> 00:17:14,740 >> تو میں نے، میری منطق کے مطابق اس لائن کی توقع اس لائن سچ ہونا چاہئے. 375 00:17:14,740 --> 00:17:16,099 یہ ایک سرمایہ خط ہے. 376 00:17:16,099 --> 00:17:20,599 میں ن مارا لیکن، ہم احساس ہے کہ اس لائن، حقیقت میں، پھانسی نہیں کیا. 377 00:17:20,599 --> 00:17:22,609 میں اور تو نیچے کود گیا. 378 00:17:22,609 --> 00:17:25,460 ایسا کیوں ہوا؟ 379 00:17:25,460 --> 00:17:27,480 >> طالب علم: آپ کو کیونکہ آپ کی حالت سادہ متن کی زیادہ سے زیادہ ہے 380 00:17:27,480 --> 00:17:29,130 ایک، نہیں کے برابر یا اس سے زیادہ سے زیادہ. 381 00:17:29,130 --> 00:17:32,260 >> JASON HIRSCHHORN: تو میں اپنی سادہ متن تھا میں ایک، زیادہ نہیں کے مقابلے میں زیادہ ہے 382 00:17:32,260 --> 00:17:32,850 زیادہ یا برابر. 383 00:17:32,850 --> 00:17:38,130 تو واضح طور پر، دارالحکومت ایک نہیں کیا حالت تو یہ متحرک، اور ہم نے کیا 384 00:17:38,130 --> 00:17:40,520 اس میں قدم، اور ہم نے کیا نہیں ضروری تبدیلی نہیں. 385 00:17:40,520 --> 00:17:41,360 تو یہ اصل میں، یہ ہے. 386 00:17:41,360 --> 00:17:42,920 میں اپنے مسئلے سے سوچا. 387 00:17:42,920 --> 00:17:46,775 میں اپنے سورس فائل میں واپس جا سکتے ہیں، اسے تبدیل، اور اس کو اپ ڈیٹ اور 388 00:17:46,775 --> 00:17:47,855 پھر 50 کی جانچ پڑتال کریں چلانے کے. 389 00:17:47,855 --> 00:17:52,590 >> لیکن ہم صرف درس کے لئے، دیکھیں گے خاطر، میں جا رہو. 390 00:17:52,590 --> 00:17:59,580 اور اگر دونوں میں سے کسی پر عمل نہیں کرتا، لیکن کیا اس کی بجائے برابر حکم ہے 391 00:17:59,580 --> 00:18:00,500 اس کو تبدیل نہیں کرتا. 392 00:18:00,500 --> 00:18:04,840 تو یہ بالکل تبدیل، اور نہیں ہے تو میں یہاں سادہ متن کو پرنٹ، ہم جا دیکھیں گے 393 00:18:04,840 --> 00:18:08,250 اس کے ذریعے لوپ کے لئے، حقیقت میں، نہیں بالکل کہ دوسرا کردار کو تبدیل. 394 00:18:08,250 --> 00:18:09,600 یہ اب بھی ایک دارالحکومت A. ہے 395 00:18:09,600 --> 00:18:12,690 >> تو پھر، ہم اپنی غلطی کو ٹھیک کر دیا. 396 00:18:12,690 --> 00:18:17,380 ہم وہاں تھا احساس ہوا کہ لاپتہ کچھ منطق. 397 00:18:17,380 --> 00:18:20,590 اور ہم نے اس سے پہلے کہ وقت سے قبل یہ ٹھیک کر دیا اصل میں اس لائن پر عمل، 398 00:18:20,590 --> 00:18:24,320 لیکن آپ کو محسوس ہوتا تھا کہ ہم صرف اگلے مارا اور اگر یہ کوئی اور کود، 399 00:18:24,320 --> 00:18:26,710 مطلب یہ ہے کہ کہ اگر حالت سچ نہیں تھا. 400 00:18:26,710 --> 00:18:29,550 ہم، حقیقت میں، نہیں مل سکا نتیجہ ہم توقع. 401 00:18:29,550 --> 00:18:33,240 تو پھر ہم حوصلہ افزائی کی جا سکتا تھا، تھا ہم کو دیکھنے کے لئے، تو ہوشیار نہیں 402 00:18:33,240 --> 00:18:38,510 کہ، حالت اور اصل میں، تو چیک کریں، تو ہماری حالت کا اندازہ کرنا چاہئے 403 00:18:38,510 --> 00:18:41,150 موجودہ تناظر میں سچ. 404 00:18:41,150 --> 00:18:42,880 >> اس پروگرام ہے کہ بگ کے لئے ہے. 405 00:18:42,880 --> 00:18:45,340 کسی کا کوئی سوال ہے؟ 406 00:18:45,340 --> 00:18:50,486 میں GDB چھوڑنے پر کیا کمانڈ مارا کر سکتا ہے؟ 407 00:18:50,486 --> 00:18:53,900 * کیا اور پھر میں نے پوچھا جائے گا، ویسے بھی چھوڑ دیا؟ 408 00:18:53,900 --> 00:18:54,390 ہاں یا نہ. 409 00:18:54,390 --> 00:18:58,440 میں ہاں مار دونگا، اور میں GDB چھوڑ گے. 410 00:18:58,440 --> 00:19:00,860 >> تو ہے کہ GDB کے لئے ایک فوری پرائمر تھا. 411 00:19:00,860 --> 00:19:03,430 اصل میں، ایک حقیقی منظر نامے میں، میں دفتر کے اوقات میں نے یہ کیا. 412 00:19:03,430 --> 00:19:06,710 میں نے اس کے عین مطابق پروگرام میں GDBed ایک طالب علم کے ساتھ دفتر کے اوقات. 413 00:19:06,710 --> 00:19:12,410 اور ہم نے دیکھا حکم واپس جاؤ اس سے پہلے، ہم سب سے پہلے، وقفے کے اہم استعمال کیا جاتا ہے 414 00:19:12,410 --> 00:19:13,190 بات یہ ہے کہ ہم نے کیا. 415 00:19:13,190 --> 00:19:16,060 ہم کمانڈ لائن کے دلائل کے ساتھ رن استعمال کیا جاتا ہے، دوسری بات یہ ہے ہم نے کیا. 416 00:19:16,060 --> 00:19:18,520 ہم منتقل کرنے کے لئے اگلے ایک بہت استعمال کیا جاتا ہے لائنوں کے ذریعے ہم سے. 417 00:19:18,520 --> 00:19:20,310 اور پھر، مختصر ورژن کے اگلے ن ہے. 418 00:19:20,310 --> 00:19:22,920 یہ قوسین میں ہے سلائڈ پر سرمئی میں. 419 00:19:22,920 --> 00:19:28,590 >> ہم قدم کا استعمال نہیں کیا، لیکن ہم نے ایسا نہیں کیا ضروری اس کیس کے لئے کرنے کی ضرورت ہے. 420 00:19:28,590 --> 00:19:32,150 لیکن ہم نے اس کے بعد تھوڑا سا میں یہ استعمال کر سکتے ہیں آج ہم ٹھیک کر رہے ہیں، کے لئے 421 00:19:32,150 --> 00:19:36,500 مثال کے طور پر، بائنری تلاش ہے جب بائنری تلاش ایک علیحدہ میں کہا جاتا ہے 422 00:19:36,500 --> 00:19:38,200 تقریب لیکن وہاں ہے اس کے ساتھ کچھ خرابی. 423 00:19:38,200 --> 00:19:40,440 ہم میں قدم کرنا چاہتے ہیں جا رہے ہیں بائنری تلاش کرنے کے لئے کال اور 424 00:19:40,440 --> 00:19:41,840 اصل میں یہ ڈیبگ. 425 00:19:41,840 --> 00:19:45,130 ہم نے کیونکہ ہم یا تو استعمال نہیں کیا کی فہرست ہمارے کوڈ کا ایک اچھا احساس ہے، لیکن اگر میں 426 00:19:45,130 --> 00:19:48,420 کیا کوڈ میں کا احساس حاصل کرنے کے لئے چاہتا تھا کے ارد گرد کیا گیا تھا، میں نے صرف فہرست استعمال کر سکتے ہیں. 427 00:19:48,420 --> 00:19:50,310 >> ، ہم استعمال کیا جاتا ہے کی معلومات مقامی لوگوں کے لئے استعمال کیا جاتا پرنٹ. 428 00:19:50,310 --> 00:19:53,260 ہم اس میں استعمال کرنے کی ضرورت نہیں تھی آگے کیس، نہ تو ہم استعمال کرنے کی ضرورت کیا ہے 429 00:19:53,260 --> 00:19:55,060 غیر فعال، لیکن ہم نے استعمال چھوڑ دیا. 430 00:19:55,060 --> 00:19:57,850 ایک بار پھر، ان 10 حکم دیتا ہے، ان کی مشق. 431 00:19:57,850 --> 00:20:00,770 آپ کو ان 10 حکم دیتا ہے سمجھ تو، آپ کو کسی بھی بگ کے لئے مقرر کیا جانا چاہئے 432 00:20:00,770 --> 00:20:02,525 GDB کے ساتھ جاری. 433 00:20:02,525 --> 00:20:05,230 434 00:20:05,230 --> 00:20:08,420 >> تو ہم پر، پھر، پر جانے کے لئے کے بارے میں ہیں سیکشن کی جڑ آج ختم ہو جا 435 00:20:08,420 --> 00:20:09,720 ان چھانٹ رہا ہے اور تلاش الگورتھم. 436 00:20:09,720 --> 00:20:14,075 ہم ایسا کرنے سے پہلے، ایک بار پھر، کوئی سوال، GDB کے لئے تبصرے، خدشات؟ 437 00:20:14,075 --> 00:20:16,750 438 00:20:16,750 --> 00:20:20,960 تو سب کا استعمال کرنے جا رہی ہے GDB کے بجائے printf کا؟ 439 00:20:20,960 --> 00:20:24,550 دائمی کی خاطر تو سب لوگ،، سب ان کے سر کے دائیں جھکی ہے 440 00:20:24,550 --> 00:20:27,400 اب، تو میں دفتری اوقات میں آپ دیکھیں گے اور سب کی TFs آپ اور دیکھیں گے 441 00:20:27,400 --> 00:20:29,460 وہ کس طرح استعمال کرنے کے لئے مجھے دکھانا، کہیں گے GDB، اور آپ کے قابل ہو جائے گا 442 00:20:29,460 --> 00:20:31,240 حق، ان کو ظاہر کرنے کے لئے؟ 443 00:20:31,240 --> 00:20:31,760 قسم کی؟ 444 00:20:31,760 --> 00:20:32,640 ہو سکتا ہے کہ امید ہے کہ. 445 00:20:32,640 --> 00:20:33,670 ڈاؤن لوڈ، اتارنا. 446 00:20:33,670 --> 00:20:35,790 >> تو ہم میں منتقل کرنے کے لئے جا رہے ہیں چھانٹ رہا ہے اور تلاش. 447 00:20:35,790 --> 00:20:40,710 تم نے پہلے ہی کے مطابق ایک فہرست ہے نظر آئے گا ہمیں، لیکن یہ نہیں جا رہا ہے کے لئے 448 00:20:40,710 --> 00:20:42,220 ہمیشہ ایسا ہونا. 449 00:20:42,220 --> 00:20:49,170 تو مسئلہ میں تفصیلات مقرر مسئلہ تین قائم، آپ کے شارٹس ہے 450 00:20:49,170 --> 00:20:51,410 آپ کو اس کی اصل کو دیکھنے کے، کر سکتے ہیں اور یہ کہ ان شارٹس کو دیکھنے کے لئے آپ سے کہتا ہے. 451 00:20:51,410 --> 00:20:55,090 اس کے علاوہ درس میں گزشتہ ہفتے، ہم گئے یہ الگورتھم کی ایک بہت ہے، تو میں ہوں 452 00:20:55,090 --> 00:20:59,150 جا کلاس میں وقت خرچ کرنے کے لئے نہیں جا رہا ان پھر الگورتھم یا ڈرائنگ کے دوران 453 00:20:59,150 --> 00:21:01,130 کس طرح ان کے لئے تصاویر یلگوردمز کام. 454 00:21:01,130 --> 00:21:04,030 ایک بار پھر، آپ کو دوبارہ دیکھ سکتے ہیں کہ معلومات لیکچر، یا اس کے بارے میں معلومات 455 00:21:04,030 --> 00:21:08,570 شارٹس پر outstandingly قبضہ کر لیا ہے ان تلاش، سب کے لئے 456 00:21:08,570 --> 00:21:10,920 cs50.net میں دستیاب ہیں جس میں. 457 00:21:10,920 --> 00:21:14,200 >> تو بجائے، ہم کیا کرنے جا رہے ہیں ایسا ان پروگراموں لکھنا ہے. 458 00:21:14,200 --> 00:21:18,190 ہم کس طرح کی ذہنی ماڈل، احساس ہے وہ کام، اور تو کیا ہم جا رہے ہیں 459 00:21:18,190 --> 00:21:20,210 ایسا کرنے کے لئے اصلی کے لئے ان کے کوڈ ہے. 460 00:21:20,210 --> 00:21:23,430 ہم اس ذہنی ماڈل تبدیل کرنے کے لئے جا رہے ہیں، تصویر، اگر آپ، میں 461 00:21:23,430 --> 00:21:24,960 اصل کوڈ. 462 00:21:24,960 --> 00:21:28,460 اور تم تھوڑا الجھن یا اگر ذہنی ماڈل پر پیار، میں مکمل طور پر 463 00:21:28,460 --> 00:21:28,770 سمجھ. 464 00:21:28,770 --> 00:21:30,540 >> ہم اصل میں نہیں کر رہے ہیں کوڈ فورا کود. 465 00:21:30,540 --> 00:21:36,030 یہ سلائڈ میں یہ فوری طور پر پوچھتا ہے جبکہ تو آپ کو بائنری تلاش کے کوڈ، اور 466 00:21:36,030 --> 00:21:39,470 اصل میں، ایک تکراری ورژن بائنری تلاش، سب سے پہلی چیز میں نے 467 00:21:39,470 --> 00:21:42,370 واقعی آپ کیا کرنا چاہیں کچھ pseudocode لکھنے. 468 00:21:42,370 --> 00:21:47,020 تو آپ کو اس ذہنی ماڈل ہے کے کس طرح بائنری تلاش کے کام. 469 00:21:47,020 --> 00:21:50,060 اگر آپ کو کاغذ کی ایک شیٹ لے لو ایک آسانی سے دستیاب، یا کھولیں 470 00:21:50,060 --> 00:21:52,520 ٹیکسٹ ایڈیٹر، اور میں چاہوں گا لکھنے کے لئے سب. 471 00:21:52,520 --> 00:21:57,470 لکھنے کے لئے چار منٹ لے لو بائنری تلاش کے لئے pseudocode. 472 00:21:57,470 --> 00:21:58,990 >> ایک بار پھر، کہ ذہنی ماڈل کے بارے میں سوچنا. 473 00:21:58,990 --> 00:22:01,980 اگر آپ سوالات ہیں میں کے ارد گرد آئے گا اور ہم تصویر کو اپنی طرف متوجہ کر سکتے ہیں. 474 00:22:01,980 --> 00:22:06,220 لیکن سب سے پہلے، ہم پروگرامنگ شروع کرنے سے پہلے، میں لکھنا چاہتے ہیں 475 00:22:06,220 --> 00:22:09,920 بائنری تلاش کے لئے pseudocode تو جب ہم میں کودو، ہم کے طور پر کچھ سمت ہے 476 00:22:09,920 --> 00:22:12,110 ہم سر کرنا چاہئے جہاں. 477 00:22:12,110 --> 00:22:15,330 >> طالب علم: ہم صف فرض کر سکتے ہیں ہم اقدار پہلے ہی کے مطابق ہے؟ 478 00:22:15,330 --> 00:22:17,960 >> JASON HIRSCHHORN: تو ثنائی کے لئے تلاش کریں کام کرنے کے لئے - بہترین سوال - آپ 479 00:22:17,960 --> 00:22:20,970 ایک کے مطابق میں لینے کے لئے ہے اقدار کی صف. 480 00:22:20,970 --> 00:22:22,290 تو یہ کام کرے گا فرض. 481 00:22:22,290 --> 00:22:23,480 ہم اس کے واپس سلائڈ جائیں گے. 482 00:22:23,480 --> 00:22:27,220 آپ جامنی رنگ تقریب میں نظر آئے گا اعلان bool کے binary_search int ہے 483 00:22:27,220 --> 00:22:29,230 قیمت، int اقدار، int ن. 484 00:22:29,230 --> 00:22:32,910 آپ کو ہے تو اس سے واقف نظر آنا چاہئے پہلے ہی رابطہ کیا یا ہو آپ 485 00:22:32,910 --> 00:22:34,580 مسئلہ سیٹ کے ساتھ گندے ہاتھوں. 486 00:22:34,580 --> 00:22:35,910 >> لیکن یہ آپ کی تقریب میں اعلان ہے. 487 00:22:35,910 --> 00:22:39,080 ایک بار پھر، کے بارے میں فکر کرنے کی ضرورت نہیں ہونا چاہئے اس وقت اتنا. 488 00:22:39,080 --> 00:22:43,660 کیا میں واقعی میں آپ کیا کرنا چاہتے ہیں لے pseudocode بائنری چار منٹ 489 00:22:43,660 --> 00:22:46,380 تلاش، اور پھر ہم چلے جائیں گے ایک گروپ کے طور پر اس سے زیادہ. 490 00:22:46,380 --> 00:22:47,500 اور میں کے ارد گرد آئے گا. 491 00:22:47,500 --> 00:22:49,590 اگر آپ سوالات ہیں، محسوس کرتے ہیں آپ کے ہاتھ کو بلند کرنے کے لئے آزاد. 492 00:22:49,590 --> 00:25:07,110 493 00:25:07,110 --> 00:25:09,680 >> کیوں آپ کو دو منٹ لے نہیں ہے pseudocode کو ختم کرنے کے لئے؟ 494 00:25:09,680 --> 00:25:13,690 495 00:25:13,690 --> 00:25:15,820 میں نے یہ کہ مضحکہ خیز لگ سکتا ہے جانتے ہیں ہم پر اتنا وقت خرچ کر رہے ہیں 496 00:25:15,820 --> 00:25:20,350 میں بھی اصل میں نہیں ہے کہ کچھ سی، لیکن خاص طور پر ان سے زیادہ کے لئے 497 00:25:20,350 --> 00:25:24,030 مشکل یلگوردمز اور مسئلہ ہم باہر کے اعداد و شمار ہے کہ سیٹ، 498 00:25:24,030 --> 00:25:27,210 pseudocode فکر نہیں میں شروع نحو کے بارے میں، صرف کے بارے میں فکر 499 00:25:27,210 --> 00:25:29,150 منطق، ناقابل یقین حد تک مددگار ہے. 500 00:25:29,150 --> 00:25:32,720 اور اس طرح، آپ کو دو کو حل نہیں کر رہے ہیں ایک بار میں ناقابل یقین حد تک مشکل مسائل. 501 00:25:32,720 --> 00:25:35,390 آپ کو صرف منطق پر توجہ مرکوز، اور کر رہے ہیں تو آپ نحو میں منتقل. 502 00:25:35,390 --> 00:25:59,960 503 00:25:59,960 --> 00:26:01,385 >> ٹھیک ہے. 504 00:26:01,385 --> 00:26:03,680 کے ذریعے جا شروع pseudocode. 505 00:26:03,680 --> 00:26:05,380 میں ثنائی، یہاں لکھا ہے تلاش pseudocode. 506 00:26:05,380 --> 00:26:07,360 ہم پر یہ لکھیں گے ایک ساتھ مل کر بورڈ. 507 00:26:07,360 --> 00:26:10,040 یا میں لکھیں گے اور آپ کو دے دیں گے مجھے ضرورت کا اشارہ ملتا ہے. 508 00:26:10,040 --> 00:26:15,010 تو کسی پہلے مجھے دے سکتے ہیں pseudocode کی لائن 509 00:26:15,010 --> 00:26:18,350 بائنری تلاش کے لئے لکھا؟ 510 00:26:18,350 --> 00:26:20,258 جی ہاں، ینی؟ 511 00:26:20,258 --> 00:26:22,698 >> طالب علم: جبکہ کی لمبائی فہرست صفر سے زیادہ ہے. 512 00:26:22,698 --> 00:26:26,114 513 00:26:26,114 --> 00:26:34,880 >> JASON HIRSCHHORN جبکہ لمبائی صفر سے زیادہ کی فہرست. 514 00:26:34,880 --> 00:26:38,810 اور پھر، ہم نے کچھ سی نظر دیکھنے کے یہاں پر نحوی چیزیں. 515 00:26:38,810 --> 00:26:41,550 لیکن اس کی سب سے زیادہ انگریزی میں ہے. 516 00:26:41,550 --> 00:26:43,980 کسی کو وہ ڈال کسی بھی لائن ہے کیا ان چھدم کوڈ میں اس سے پہلے؟ 517 00:26:43,980 --> 00:26:47,280 518 00:26:47,280 --> 00:26:50,210 >> طالب علم: ایک صف حاصل کریں کی تعداد کے مطابق. 519 00:26:50,210 --> 00:26:53,600 >> JASON HIRSCHHORN: آپ نے لکھا ہے "ایک حاصل کے مطابق تعداد کے صف. "فی 520 00:26:53,600 --> 00:26:56,140 تقریب کا اعلان، ہم گزر جائے گا کے مطابق تعداد کے ایک صف. 521 00:26:56,140 --> 00:26:57,280 >> طالب علم: [اشراوی]. 522 00:26:57,280 --> 00:26:59,030 >> JASON HIRSCHHORN: تو ہم اس کی ضرورت گا. 523 00:26:59,030 --> 00:27:01,820 لیکن ہاں، ہم اس کی ضرورت نہیں تھی تو ہم کے ہمارے صف کو حل کرنے کی ضرورت ہو گی 524 00:27:01,820 --> 00:27:04,850 تعداد، کیونکہ بائنری تلاش صرف حل arrays کے پر کام کرتا ہے. 525 00:27:04,850 --> 00:27:11,300 فہرست کی لمبائی صفر کے برابر تو ہے، میں میں ہوں کچھ گھوبگھرالی منحنی خطوط وحدانی میں ڈال دیا جا رہا 526 00:27:11,300 --> 00:27:15,420 یہ تھوڑا سا زیادہ کی طرح نظر بنانے کے لئے سی لیکن جبکہ، ایک پر نقشے پر لگتا ہے 527 00:27:15,420 --> 00:27:19,550 جبکہ لوپ، تو یہ دیر کے اندر لوپ ہم کیا کرنے کی ضرورت ہے 528 00:27:19,550 --> 00:27:22,000 ثنائی کے لئے تلاش کرتے ہیں؟ 529 00:27:22,000 --> 00:27:25,530 >> مجھے نہیں دی ہے جو کسی اور ابھی تک جواب لیکن جو اس نے لکھا؟ 530 00:27:25,530 --> 00:27:31,750 531 00:27:31,750 --> 00:27:33,320 >> طالب علم: لسٹ کے وسط میں جاؤ. 532 00:27:33,320 --> 00:27:33,980 >> JASON HIRSCHHORN: ٹام. 533 00:27:33,980 --> 00:27:35,230 فہرست کے وسط میں جاؤ. 534 00:27:35,230 --> 00:27:43,290 535 00:27:43,290 --> 00:27:45,530 اور اپ کی پیروی کے سوال، کیا ہم پر ہیں ایک بار ہم کیا کرتے ہیں 536 00:27:45,530 --> 00:27:46,870 فہرست کے درمیان میں؟ 537 00:27:46,870 --> 00:27:49,310 >> طالب علم: یہ ہے کہ آیا ایک چیک کرتے آپ کے لئے تلاش کر رہے ہیں کی تعداد. 538 00:27:49,310 --> 00:27:50,120 >> JASON HIRSCHHORN: بہترین. 539 00:27:50,120 --> 00:28:05,500 فہرست کے درمیان میں جاؤ اور چیک ہماری قیمت ہے تو - 540 00:28:05,500 --> 00:28:06,515 تصوراتی، بہترین. 541 00:28:06,515 --> 00:28:10,460 کسی کو کچھ اور تھا کہ اس سے مختلف تھا؟ 542 00:28:10,460 --> 00:28:11,210 بالکل ٹھیک ہے. 543 00:28:11,210 --> 00:28:13,800 >> ہم بائنری تلاش میں کیا پہلی بات فہرست کے درمیان میں کرنے کے لئے جانا جاتا ہے اور 544 00:28:13,800 --> 00:28:15,870 ہماری قیمت ہے تو دیکھنے کے لئے چیک کریں. 545 00:28:15,870 --> 00:28:19,682 ہماری قیمت ہے تو تو میں فرض ، ہم کیا کرتے ہیں؟ 546 00:28:19,682 --> 00:28:21,610 >> طالب علم: ہم [اشراوی] صفر واپس. 547 00:28:21,610 --> 00:28:23,400 >> JASON HIRSCHHORN: جی ہاں، تو ہمارے قیمت ہے، ہم اسے مل گیا. 548 00:28:23,400 --> 00:28:27,950 تو ہم تاہم، کوئی راستہ بتا سکتے ہیں اس تقریب کے بیان کیا جاتا ہے، ہم صارف بتا 549 00:28:27,950 --> 00:28:28,520 ہم اسے مل گیا. 550 00:28:28,520 --> 00:28:30,950 یہ وہاں نہیں ہے، اگرچہ، ہے یہ مشکل ہو جاتا ہے، جہاں. 551 00:28:30,950 --> 00:28:35,120 تو یہ وہاں نہیں ہے، تو کسی اور جو بائنری تلاش یا کام کر رہا تھا 552 00:28:35,120 --> 00:28:36,830 اب، ہم کیا ایک خیال کرتے ہیں ہے؟ 553 00:28:36,830 --> 00:28:37,830 >> طالب علم: سوال. 554 00:28:37,830 --> 00:28:38,100 >> JASON HIRSCHHORN: جی ہاں؟ 555 00:28:38,100 --> 00:28:39,920 >> طالب علم: صف پہلے ہی کے مطابق ہے؟ 556 00:28:39,920 --> 00:28:42,200 >> JASON HIRSCHHORN: جی ہاں، ہم سنبھالنے کر رہے ہیں صف پہلے ہی کے مطابق ہے. 557 00:28:42,200 --> 00:28:46,480 >> طالب علم: تو پھر آپ کو چیک کرنے کے ہے اگر آپ کو دیکھ کر اس قدر سے زیادہ ہے 558 00:28:46,480 --> 00:28:51,745 آپ چاہتے ہیں کہ قیمت، آپ کو منتقل کر سکتے ہیں دوسرے نصف کے درمیان. 559 00:28:51,745 --> 00:28:54,110 >> JASON HIRSCHHORN: تو اگر مشرق فہرست ہم سے زیادہ ہے 560 00:28:54,110 --> 00:28:57,440 کیا، تو ہم کرتے ہیں؟ 561 00:28:57,440 --> 00:28:58,320 ہم جہاں میں ڈالیں؟ 562 00:28:58,320 --> 00:29:01,400 >> طالب علم: آپ کو منتقل کرنا چاہتے ہیں کے ساتھ کی فہرست کے نصف 563 00:29:01,400 --> 00:29:02,780 اس سے بھی کم تعداد کے. 564 00:29:02,780 --> 00:29:04,460 >> JASON HIRSCHHORN: تو ہم کریں گے چھوڑ دیا کال. 565 00:29:04,460 --> 00:29:15,435 مشرق زیادہ ہے تو، ہم تلاش کر سکتے ہیں فہرست کے بائیں نصف. 566 00:29:15,435 --> 00:29:20,620 567 00:29:20,620 --> 00:29:22,980 اور اس کے بعد تلاش کی طرف سے، کیا میں نے تلاش کی طرف سے مطلب ہے؟ 568 00:29:22,980 --> 00:29:24,010 >> طالب علم: [اشراوی]. 569 00:29:24,010 --> 00:29:24,410 >> JASON HIRSCHHORN: ہم مشرق کے پاس جاؤ. 570 00:29:24,410 --> 00:29:25,740 ہم اصل میں اس بات کا اعادہ. 571 00:29:25,740 --> 00:29:29,210 ہم اپنے جبکہ لوپ کے ذریعے واپس جانا. 572 00:29:29,210 --> 00:29:31,480 میں آپ کو آخری ایک دے گا - 573 00:29:31,480 --> 00:29:39,047 ورنہ اگر،، مشرق سے کم ہے ہم یہاں کیا کرتے ہیں؟ 574 00:29:39,047 --> 00:29:40,360 >> طالب علم: ٹھیک ہے جاؤ. 575 00:29:40,360 --> 00:29:41,610 >> JASON HIRSCHHORN: ٹھیک ہے تلاش. 576 00:29:41,610 --> 00:29:47,440 577 00:29:47,440 --> 00:29:51,710 یہ اچھا لگ رہا ہے، لیکن کسی کو بھی ہے ہم لاپتہ یا جا سکتا ہے کہ کچھ 578 00:29:51,710 --> 00:29:53,200 آپ کو ڈال دیا کہ کچھ اور آپ چھدم کوڈ میں؟ 579 00:29:53,200 --> 00:29:57,080 580 00:29:57,080 --> 00:29:58,410 تو یہ ہم نے اب تک کیا ہے. 581 00:29:58,410 --> 00:30:00,960 فہرست کی لمبائی زیادہ سے زیادہ ہے صفر سے، ہم جا رہے ہیں 582 00:30:00,960 --> 00:30:03,220 فہرست کے وسط اور ہماری قیمت ہے تو چیک کریں. 583 00:30:03,220 --> 00:30:06,970 >> مشرق بڑا ہے، ہم جا رہے ہیں مشرق ہے تو تلاش اور، چھوڑ دیا 584 00:30:06,970 --> 00:30:09,230 کم، ہم تلاش کرنے کے لئے جا رہے ہیں. 585 00:30:09,230 --> 00:30:14,430 تو ہم سب کے ساتھ کچھ واقف تھا ہم کمپیوٹر سائنس میں استعمال کی شرائط 586 00:30:14,430 --> 00:30:15,550 اور اوزار ہم. 587 00:30:15,550 --> 00:30:18,300 لیکن آپ نے پہلے ہی ہم تھے محسوس کریں گے انگریزی میں بات، لیکن ہم نے محسوس کیا ایک 588 00:30:18,300 --> 00:30:24,790 پر نقشے پر لگ رہا تھا کہ بہت سی چیزوں کے ہم اپنی کوڈنگ کے آلے کٹ میں ہے، فورم کے اوزار. 589 00:30:24,790 --> 00:30:27,210 تو دائیں بیٹ سے دور، ہم نہیں ہیں اصل میں ابھی تک کوڈ جا رہا. 590 00:30:27,210 --> 00:30:33,300 >> ہم نے انگریزی میں یہاں کیا دیکھ رہے ہیں کہ نقشے چیزوں کو ہم C میں لکھ سکتے ہیں؟ 591 00:30:33,300 --> 00:30:34,560 >> طالب علم: جبکہ. 592 00:30:34,560 --> 00:30:35,320 >> JASON HIRSCHHORN جبکہ. 593 00:30:35,320 --> 00:30:40,610 تو یہ بات ٹھیک ہے یہاں کیا پر نقشے؟ 594 00:30:40,610 --> 00:30:42,630 >> طالب علم: ایک جبکہ لوپ. 595 00:30:42,630 --> 00:30:43,200 >> JASON HIRSCHHORN: جبکہ لوپ؟ 596 00:30:43,200 --> 00:30:44,540 یا شاید، عام طور پر، ایک لوپ. 597 00:30:44,540 --> 00:30:46,260 ہم سے زیادہ کچھ کرنا چاہتے ہیں. 598 00:30:46,260 --> 00:30:49,050 تو ہم ایک لوپ کوڈ لئے جا رہے ہیں. 599 00:30:49,050 --> 00:30:51,640 ہم نے کیا ہے کیونکہ ہم پہلے ہی جانتے ہیں، یہ ایک وقت کے جوڑے اور ہم 600 00:30:51,640 --> 00:30:54,180 ، وہاں سے باہر مثالیں بہت ہے کس طرح اصل میں لکھنا 601 00:30:54,180 --> 00:30:55,310 ایک لوپ کے لئے اس انڈیکس. 602 00:30:55,310 --> 00:30:56,160 تو یہ بہت آسان ہونا چاہئے. 603 00:30:56,160 --> 00:30:58,070 ہم اس کو حاصل کرنے کے قابل ہونا چاہئے بہت تیزی سے شروع کر دیا ہے. 604 00:30:58,070 --> 00:31:01,830 >> اور کیا ہم یہاں دیکھتے ہیں؟ 605 00:31:01,830 --> 00:31:06,820 کیا دوسری ڈھانچے syntaxes، چیزیں ہم C میں سے واقف ہیں، ہم کرتے ہیں 606 00:31:06,820 --> 00:31:09,790 پہلے ہی کی بنیاد کا احساس ہے ہم استعمال کیا جاتا الفاظ سے دور؟ 607 00:31:09,790 --> 00:31:10,830 جی ہاں، انا؟ 608 00:31:10,830 --> 00:31:11,360 [اشراوی] 609 00:31:11,360 --> 00:31:12,990 صرف مذاق کر رہا. 610 00:31:12,990 --> 00:31:13,540 ینا، آگے بڑھو. 611 00:31:13,540 --> 00:31:14,530 >> طالب علم: اگر اور کچھ. 612 00:31:14,530 --> 00:31:16,260 >> JASON HIRSCHHORN: اگر اور - یہاں. 613 00:31:16,260 --> 00:31:18,840 تو کیا ان لوگوں کی طرح نظر آتے ہیں؟ 614 00:31:18,840 --> 00:31:20,420 >> طالب علم: ایک اور بیان تو. 615 00:31:20,420 --> 00:31:21,560 >> JASON HIRSCHHORN: جی ہاں، حالات، ٹھیک ہے؟ 616 00:31:21,560 --> 00:31:24,650 تو ہم شاید ضرورت پڑے گی کچھ شرائط لکھنا. 617 00:31:24,650 --> 00:31:31,185 اور پھر، اگرچہ ہو سکتا ہے کہ میں بردوست سب سے پہلے، ہم عام طور پر اب ایک احساس ہے 618 00:31:31,185 --> 00:31:34,010 حالات اور لکھنے کے لئے کس طرح حالات کے لئے نحو. 619 00:31:34,010 --> 00:31:36,850 ہم نہیں ہے تو، ہم صرف نظر حالات، کٹ اور پیسٹ کے لئے نحو 620 00:31:36,850 --> 00:31:39,950 کہ، ہم جانتے ہیں یہاں ایک شرط کی ضرورت ہے. 621 00:31:39,950 --> 00:31:44,910 ہم پر اس نقشے کو دیکھنے کے کسی بھی دوسری چیزوں ہم C میں کرنے کی ضرورت ہے ہو سکتا ہے؟ 622 00:31:44,910 --> 00:31:48,312 623 00:31:48,312 --> 00:31:48,960 جی ہاں، Aleha؟ 624 00:31:48,960 --> 00:31:50,370 >> طالب علم: یہ، واضح ہو سکتا ہے صرف کی جانچ پڑتال کی طرف سے اگر 625 00:31:50,370 --> 00:31:51,990 قیمت کچھ برابر. 626 00:31:51,990 --> 00:31:54,578 >> JASON HIRSCHHORN: تو ہم کس طرح چیک کر سکتا ہوں اور - اس فہرست کے درمیان میں کرنے کے لئے جانا 627 00:31:54,578 --> 00:31:55,610 ہماری قیمت ہے اور اگر چیک کریں؟ 628 00:31:55,610 --> 00:31:56,570 ہم اس C میں کس طرح کرتے ہیں؟ 629 00:31:56,570 --> 00:31:58,450 اس کے لئے نحو کیا ہے؟ 630 00:31:58,450 --> 00:31:59,235 >> طالب علم: برابر، برابر. 631 00:31:59,235 --> 00:32:00,650 >> JASON HIRSCHHORN: برابر، برابر. 632 00:32:00,650 --> 00:32:03,540 تو اس چیک شاید جا رہا ہے ایک برابر ہو، برابر. 633 00:32:03,540 --> 00:32:04,510 تو ہم کہیں کہ کی ضرورت ہے پتہ چل جائے گا. 634 00:32:04,510 --> 00:32:07,510 اور اصل میں، صرف اس کے لکھنے میں، ہم ان دوسری چیزوں کو دیکھنے کے. 635 00:32:07,510 --> 00:32:11,400 ہم کچھ کرنے کے لئے جا رہے ہیں مقابلے آپریٹرز وہاں میں - 636 00:32:11,400 --> 00:32:12,010 تصوراتی، بہترین. 637 00:32:12,010 --> 00:32:14,980 تو یہ اصل کی طرح، کی طرف سے اور لگ رہا ہے بڑی، ہم نہیں لکھا ہے ایک 638 00:32:14,980 --> 00:32:16,390 ابھی تک C کوڈ کے لفظ. 639 00:32:16,390 --> 00:32:20,610 لیکن ہم ذہنی ماڈل ہے لیکچر اور ان کے شارٹس کے ذریعے. 640 00:32:20,610 --> 00:32:22,350 >> ہم نے ایک گروپ کے طور پر چھدم کوڈ لکھا. 641 00:32:22,350 --> 00:32:27,110 اور پہلے سے ہی، ہم 80 فیصد تو نہیں ہے ہم کیا کرنے کی ضرورت کا 90 فی صد. 642 00:32:27,110 --> 00:32:28,550 اب، ہم صرف کوڈ کرنے کی ضرورت ہے یہ، ایک بار پھر، ایک جو 643 00:32:28,550 --> 00:32:30,110 حل کرنے کے لئے غیر معمولی مسئلہ. 644 00:32:30,110 --> 00:32:31,890 لیکن کم از کم ہم منطق پر پھنس گئے ہیں. 645 00:32:31,890 --> 00:32:38,040 ، ہم دفتر کے اوقات کے لئے جانا اب جب کم از کم مجھے ضرورت ہے معلوم ہے کہ کیا کہہ سکتے ہیں، 646 00:32:38,040 --> 00:32:40,160 ایسا کرنے کے لئے، لیکن آپ کو یاد دلاتے کر سکتے ہیں نحو کے مجھے؟ 647 00:32:40,160 --> 00:32:42,940 یا دفتر گھنٹے، بھیڑ رہے ہیں یہاں تک کہ اگر بلکہ، نحو کے لئے گوگل کر سکتے ہیں 648 00:32:42,940 --> 00:32:45,040 منطق پر پھنس گئے کیا جا رہا ہے سے. 649 00:32:45,040 --> 00:32:48,570 >> اور پھر، کی بجائے حل کرنے کی کوشش منطق اور نحو کے مسائل تمام 650 00:32:48,570 --> 00:32:51,900 ایک ہی وقت میں، یہ اکثر زیادہ بہتر ہے میں ان دو مشکل مسائل توڑ 651 00:32:51,900 --> 00:32:58,280 دو زیادہ انتظام ہیں اور کرتے ہیں سی میں چھدم کوڈ سب سے پہلے اور پھر کوڈ 652 00:32:58,280 --> 00:33:00,620 تو کے لئے میں نے کیا دیکھتے ہیں چھدم کوڈ وقت سے قبل. 653 00:33:00,620 --> 00:33:04,060 >> فہرست کی لمبائی زیادہ سے زیادہ ہے صفر سے، مشرق میں دیکھو 654 00:33:04,060 --> 00:33:05,090 فہرست کے. 655 00:33:05,090 --> 00:33:09,610 تعداد اور، سچ ہے واپس مل گیا ہے تعداد اس سے زیادہ، تلاش چھوڑ دیا. 656 00:33:09,610 --> 00:33:13,200 اور اگر تعداد کم، تلاش حق، جھوٹے واپس. 657 00:33:13,200 --> 00:33:18,710 تو ہے کہ تقریبا ایک جیسی لگتی ہے اگر نہیں ہم نے لکھا جو تقریبا ایک جیسی. 658 00:33:18,710 --> 00:33:23,030 اصل میں، ٹام، آپ سب سے پہلے کیا کہا، فہرست کے اور اگر مشرق توڑ 659 00:33:23,030 --> 00:33:24,880 دو بیانات میں پایا تعداد میں نے اصل میں ہے کیا. 660 00:33:24,880 --> 00:33:25,507 >> میں وہاں ان کے مشترکہ. 661 00:33:25,507 --> 00:33:27,100 میں بات سننی چاہیے اگر آپ پہلی بار. 662 00:33:27,100 --> 00:33:30,640 تو ہے کہ ہم نے چھدم کوڈ ہے. 663 00:33:30,640 --> 00:33:35,060 اب آپ چاہتے ہیں تو، معذرت، جانا ہمارے ابتدائی مسئلہ کی حمایت. 664 00:33:35,060 --> 00:33:37,780 کوڈ binary.c ہیں. 665 00:33:37,780 --> 00:33:40,870 تو ایک تکراری ورژن کے نفاذ کے مندرجہ ذیل کا استعمال کرتے ہوئے بائنری تلاش 666 00:33:40,870 --> 00:33:42,420 تقریب اعلان. 667 00:33:42,420 --> 00:33:44,550 >> اور آپ کو کاپی کرنے کے لئے کی ضرورت نہیں ہے اس کو ابھی تک. 668 00:33:44,550 --> 00:33:49,470 میں اصل میں کھولنے جا رہا ہوں اپ یہاں binary.c. 669 00:33:49,470 --> 00:33:52,880 تو تقریب اعلان ہے سکرین کے وسط میں. 670 00:33:52,880 --> 00:33:57,570 اور تم میں چھدم کوڈ لیا دیکھیں گے اپنے اطراف سے، لیکن تقریبا ایک جیسی 671 00:33:57,570 --> 00:33:59,740 کیا ہم نے لکھا، اور آپ کے لئے اس میں ڈال دیا. 672 00:33:59,740 --> 00:34:06,010 تو اب، پانچ منٹ لے اس تقریب کے کوڈ. 673 00:34:06,010 --> 00:34:08,199 >> اور پھر، اگر آپ کو کوئی سوال ہے تو، آپ کے ہاتھ کو بلند، میں کروں گا، مجھے پتہ ہے 674 00:34:08,199 --> 00:34:08,710 کے ارد گرد آئے. 675 00:34:08,710 --> 00:34:09,800 >> طالب علم: [اشراوی]. 676 00:34:09,800 --> 00:34:12,380 >> JASON HIRSCHHORN: تو میں ثنائی لیا تلاش تعریف 677 00:34:12,380 --> 00:34:14,429 لائن 12 پر، سب سے اوپر. 678 00:34:14,429 --> 00:34:16,429 یہی وجہ ہے کہ میں نے اپنے سلائڈ کے لئے گیا تھا. 679 00:34:16,429 --> 00:34:20,940 اور پھر یہ سب چھدم کوڈ میں صرف کاپی اور سلائڈ سے چسپاں، 680 00:34:20,940 --> 00:34:22,190 چھدم کوڈ سلائڈ. 681 00:34:22,190 --> 00:35:22,830 682 00:35:22,830 --> 00:35:26,786 میں اب بھی [اشراوی] نہیں سن رہا ہوں. 683 00:35:26,786 --> 00:37:13,010 684 00:37:13,010 --> 00:37:15,820 >> آپ کو ختم کر دیا ہے اگر ایسا ہے تو آپ عمل درآمد، میں نے اس کی جانچ کرنا چاہتے. 685 00:37:15,820 --> 00:37:19,410 میں آپ helpers.h فائل ای میل پہلے اس کلاس میں. 686 00:37:19,410 --> 00:37:22,360 اور اس کے ساتھ ساتھ آن لائن دستیاب ہو جائے گا دیکھ کر لوگوں کے لئے ڈاؤن لوڈ، اتارنا کے لئے 687 00:37:22,360 --> 00:37:24,750 اس حصے کے وقت میں تاخیر. 688 00:37:24,750 --> 00:37:29,350 اور میں صرف عام تقسیم استعمال کیا جاتا ہے pset3 سے کوڈ. 689 00:37:29,350 --> 00:37:34,590 تو میں find.C، میری helpers.h فائل کو استعمال کر لیا بلکہ helpers.h فائل سے 690 00:37:34,590 --> 00:37:36,280 کہ تقسیم کے کوڈ میں دیا ہے. 691 00:37:36,280 --> 00:37:39,310 >> اور میں ایک دوسرے کی تبدیلی کرنے کے لئے تھا بلکہ صرف بلا سے find.C 692 00:37:39,310 --> 00:37:42,770 تلاش، binary_search کال. 693 00:37:42,770 --> 00:37:49,080 تو آپ اپنے کوڈ کو ٹیسٹ کرنے کے لئے کرنا چاہتے ہیں تو، کہ یہ کس طرح کرنا ہے. 694 00:37:49,080 --> 00:37:52,530 اصل میں، ہم اس کوڈ کو چلانے جائے گا جب اب، میں نے صرف ایک نقل کی جاتی 695 00:37:52,530 --> 00:37:59,820 میری pset3 ڈائریکٹری، ایک بار پھر، باہر تبدیل پھر مددگار فائلوں اور بنا دیا 696 00:37:59,820 --> 00:38:04,695 binary_search فون کرنے find.C میں تبدیل کی بجائے صرف تلاش. 697 00:38:04,695 --> 00:40:08,620 698 00:40:08,620 --> 00:40:09,120 >> JASON HIRSCHHORN: جی ہاں. 699 00:40:09,120 --> 00:40:11,258 آپ سے ایک سوال ہے؟ 700 00:40:11,258 --> 00:40:12,150 >> طالب علم: کوئی بات نہیں. 701 00:40:12,150 --> 00:40:12,600 >> JASON HIRSCHHORN: کوئی تشویش نہیں. 702 00:40:12,600 --> 00:40:13,370 ٹھیک ہے، چلو شروع کرتے ہیں. 703 00:40:13,370 --> 00:40:15,090 ہم نے ایک گروپ کے طور پر اس کوڈ کو کیا جائے گا. 704 00:40:15,090 --> 00:40:16,050 ایک دوسرے نوٹ. 705 00:40:16,050 --> 00:40:20,600 ایک بار پھر، اس، آسانی سے تبدیل کیا جا سکتا ہے مسئلہ سیٹ تین کے لئے. 706 00:40:20,600 --> 00:40:25,530 میں اپنے helpers.h فائل ہے جس میں، بلکہ helpers.h سے ہم دے رہے ہیں، 707 00:40:25,530 --> 00:40:28,560 بائنری تلاش، بلبلا اعلان ترتیب، اور انتخاب کی طرح. 708 00:40:28,560 --> 00:40:37,400 اور find.c میں آپ کو لائن پر محسوس کریں گے، کیا لائن 68، ہم بائنری کال، ہے 709 00:40:37,400 --> 00:40:39,160 تلاش کی بجائے تلاش. 710 00:40:39,160 --> 00:40:42,930 تو پھر، دستیاب ہے کہ کوڈ آن لائن یا آپ ہیں کہ کوڈ 711 00:40:42,930 --> 00:40:46,590 ابھی پیدا آسانی سے تبدیل کیا جا سکتا ہے کے لئے P یہ چیک کرنے کے 3 سیٹ. 712 00:40:46,590 --> 00:40:50,620 >> لیکن سب سے پہلے، بائنری تلاش کے کوڈ ہیں. 713 00:40:50,620 --> 00:40:53,690 ہمارے تقریب اعلان، ہم ایک bool واپس. 714 00:40:53,690 --> 00:40:55,810 ہم قیمت نامی ایک عددی لے. 715 00:40:55,810 --> 00:40:59,285 ہم نے integers کے ایک صف لے اقدار، اور ہم ن لے 716 00:40:59,285 --> 00:41:00,850 صف کے سائز. 717 00:41:00,850 --> 00:41:05,640 یہیں لائن 10،، میں ہے تیز stdbool.h شامل ہیں. 718 00:41:05,640 --> 00:41:07,360 کہ ہے کیوں کسی کو پتہ ہے؟ 719 00:41:07,360 --> 00:41:12,180 720 00:41:12,180 --> 00:41:16,600 تو کوڈ کے اس لائن کیا کرتا ہے؟ 721 00:41:16,600 --> 00:41:19,880 >> طالب علم: یہ آپ کو کرنے کی اجازت دیتا ایک bool واپسی کی قسم کا استعمال کرتے ہیں. 722 00:41:19,880 --> 00:41:20,350 >> JASON HIRSCHHORN: بالکل. 723 00:41:20,350 --> 00:41:22,300 >> طالب علم: یا یہ اجازت دیتا ہے کہ ایک لائبریری ہے ایک bool واپسی کی قسم استعمال کرنے کے لئے. 724 00:41:22,300 --> 00:41:27,590 >> JASON HIRSCHHORN: تو تیزی سے شامل ہیں stdbool.h لائن مجھے کچھ دیتا ہے 725 00:41:27,590 --> 00:41:31,340 چیزوں کے لئے کی تعریف اور اعلان میں استعمال کرنے کی اجازت ہوں 726 00:41:31,340 --> 00:41:32,400 اس لائبریری. 727 00:41:32,400 --> 00:41:36,570 لہذا ان کے درمیان ہے کہ کہہ رہا ہے اس قسم bool کہتے ہیں، اور یہ بھی ہو سکتا ہے 728 00:41:36,570 --> 00:41:37,750 صحیح یا غلط. 729 00:41:37,750 --> 00:41:39,010 تو یہ اس لائن کرتا ہے. 730 00:41:39,010 --> 00:41:41,680 میں اس لائن کی ضرورت نہیں تھی اور اگر میں کروں گا یہ لکھنے کے لئے مصیبت میں حاصل 731 00:41:41,680 --> 00:41:43,520 یہاں، bool کے، وہیں لفظ. 732 00:41:43,520 --> 00:41:44,140 بالکل صحیح. 733 00:41:44,140 --> 00:41:46,430 تو میں نے اس کے کوڈ میں اس کی ضرورت. 734 00:41:46,430 --> 00:41:47,690 ٹھیک ہے. 735 00:41:47,690 --> 00:41:51,860 تو یہ، پھر، تکراری ہے ورژن، نہیں ایک پنراورتی ایک. 736 00:41:51,860 --> 00:41:53,820 تو ہم شروع کرنے ہیں. 737 00:41:53,820 --> 00:41:56,200 >> یہ پہلے سے شروع کرتے ہیں چھدم کوڈ کی لائن. 738 00:41:56,200 --> 00:41:58,770 اور امید ہے کہ، ہم - یا نہیں امید ہے. 739 00:41:58,770 --> 00:42:00,530 ہم نے کمرے کے ارد گرد جا رہے ہیں. 740 00:42:00,530 --> 00:42:05,110 ہم لائن کی طرف سے لائن جائیں گے، اور میں مدد ملے گی آپ کو ہم کی ضرورت ہے کہ لائن اعداد و شمار 741 00:42:05,110 --> 00:42:06,310 سب سے پہلے لکھنے کے لئے. 742 00:42:06,310 --> 00:42:10,550 تو جبکہ فہرست کی لمبائی صفر سے زیادہ ہے. 743 00:42:10,550 --> 00:42:12,680 کے سامنے شروع. 744 00:42:12,680 --> 00:42:15,190 کیا لائن میں لکھنا چاہیے یہاں، کوڈ میں؟ 745 00:42:15,190 --> 00:42:19,470 >> طالب علم: جبکہ قوسین ن 0 سے بڑا ہے. 746 00:42:19,470 --> 00:42:21,900 >> JASON HIRSCHHORN: جبکہ ن 0 سے بہت اچھا ہے. 747 00:42:21,900 --> 00:42:26,550 تو (ن)، کی ایک فہرست کے سائز ہے اور ہم اگر جانچ پڑتال کر رہے ہیں - 748 00:42:26,550 --> 00:42:26,800 >> [INTERPOSING آوازیں] 749 00:42:26,800 --> 00:42:27,660 >> JASON HIRSCHHORN: - معاف کیجئے گا؟ 750 00:42:27,660 --> 00:42:29,360 >> طالب علم: ہم کیسے جانتے ہیں کہ N فہرست کے سائز کے ہے؟ 751 00:42:29,360 --> 00:42:29,690 >> JASON HIRSCHHORN: معذرت. 752 00:42:29,690 --> 00:42:34,690 pset کی تفصیلات کے مطابق، تلاش اور طرح، آپ کو لکھنے کے لئے کی ضرورت ہے کام کرتا ہے 753 00:42:34,690 --> 00:42:36,230 (ن) کی فہرست کے سائز ہے. 754 00:42:36,230 --> 00:42:37,710 میں یہاں اس بات کی وضاحت کرنا بھول گئے. 755 00:42:37,710 --> 00:42:41,310 لیکن ہاں. (ن) کے سائز ہے اس معاملے میں کی فہرست،. 756 00:42:41,310 --> 00:42:44,740 تو جبکہ N 0 سے بڑا ہے. 757 00:42:44,740 --> 00:42:45,580 ٹھیک ہے. 758 00:42:45,580 --> 00:42:50,090 کہ تھوڑا مسئلہ ثابت ہو سکتا ہے تاہم، چیزوں پر اگر. 759 00:42:50,090 --> 00:42:54,510 ہم جانتے رہیں گے کیونکہ اس میں فہرست کے سائز کے 760 00:42:54,510 --> 00:43:06,640 تقریب، لیکن ہم شروع کا کہنا ہے کہ 5 integers کے ایک صف کے ساتھ. 761 00:43:06,640 --> 00:43:08,950 اور ہم کے ذریعے جاؤ اور ہم نے اب اس کو نیچے اکٹھا 762 00:43:08,950 --> 00:43:10,310 2 integers کے ایک صف. 763 00:43:10,310 --> 00:43:12,160 کہ جس میں 2 integers کے ہے؟ 764 00:43:12,160 --> 00:43:15,895 سائز ہم چاہتے ہیں کہ اب 2 ہے میں نظر آتے ہیں، لیکن ہے کہ جس میں 2 ہے؟ 765 00:43:15,895 --> 00:43:17,720 ہے، اس سوال کا احساس ہے؟ 766 00:43:17,720 --> 00:43:18,020 >> ٹھیک ہے. 767 00:43:18,020 --> 00:43:19,120 میں اسے دوبارہ سے پوچھیں گے. 768 00:43:19,120 --> 00:43:26,640 تو ہم 5 سے اس صف کے ساتھ شروع integers کے، اور (ن) کے حق، 5 برابر ہے؟ 769 00:43:26,640 --> 00:43:28,050 ہم یہاں کے ذریعے چلائے جائیں گے. 770 00:43:28,050 --> 00:43:31,560 ہم شاید سائز تبدیل کر دیں گے، حق، چیزوں پر جانے کے طور پر. 771 00:43:31,560 --> 00:43:32,700 جو ہم ہم کرنا چاہتے ہیں کا کہنا ہے کہ کیا ہے. 772 00:43:32,700 --> 00:43:34,150 ہم تلاش نہیں کرنا چاہتے مکمل بات ایک بار پھر. 773 00:43:34,150 --> 00:43:35,480 تو ہم 2 اسے تبدیل کہتے ہیں. 774 00:43:35,480 --> 00:43:36,970 ہم عجیب ہے کہ نصف فہرست لے. 775 00:43:36,970 --> 00:43:38,800 تو صرف 2 منتخب کریں. 776 00:43:38,800 --> 00:43:40,590 تو اب ن 2 برابر. 777 00:43:40,590 --> 00:43:42,780 میں غریب کے لئے معذرت خواہ خشک دستی تحریر مارکر. 778 00:43:42,780 --> 00:43:43,080 ٹھیک ہے نا؟ 779 00:43:43,080 --> 00:43:45,670 اور ہم نے فہرست کے ذریعے تلاش کر رہے ہیں پھر 2 سائز کی ایک فہرست کے ساتھ. 780 00:43:45,670 --> 00:43:48,580 ٹھیک ہے، ہمارے صف اب بھی 5 سائز کے ہے. 781 00:43:48,580 --> 00:43:51,920 ہم صرف چاہتے ہیں اس میں 2 کے مقامات تلاش. 782 00:43:51,920 --> 00:43:53,590 لہذا ان جس میں 2 مقامات ہیں؟ 783 00:43:53,590 --> 00:43:57,640 784 00:43:57,640 --> 00:43:58,815 >> احساس ہے کہ ہے؟ 785 00:43:58,815 --> 00:44:00,290 انہوں نے چھوڑ دیا 2 مقامات ہیں؟ 786 00:44:00,290 --> 00:44:01,940 وہ صحیح 2 مقامات ہیں؟ 787 00:44:01,940 --> 00:44:03,540 وہ مشرق 2 مقامات ہیں؟ 788 00:44:03,540 --> 00:44:06,350 ہم اس مسئلے کو ٹوٹ، لیکن ہم اصل میں معلوم نہیں ہے جس کے حصے کی 789 00:44:06,350 --> 00:44:11,600 ہم اب بھی دیکھ رہے ہیں مسئلہ، صرف ان 2 متغیر ہونے کی طرف سے. 790 00:44:11,600 --> 00:44:16,450 تو ہم زیادہ تو تھوڑا سا کی ضرورت ہے ن 0 سے بڑا ہے جبکہ. 791 00:44:16,450 --> 00:44:21,410 ہم جاننے کی ضرورت ہے کہ جہاں ن ہماری اصل صف میں ہے. 792 00:44:21,410 --> 00:44:26,660 >> تو کوئی ہے اس لائن کو تبدیل؟ 793 00:44:26,660 --> 00:44:27,970 اس لائن میں سے زیادہ تر ہے بالکل درست. 794 00:44:27,970 --> 00:44:29,170 ایک دوسرے کے علاوہ ہے؟ 795 00:44:29,170 --> 00:44:32,510 ہم ن کے لئے کچھ باہر تبادلہ کر سکتے ہیں تھوڑا سا بہتر اس لائن ہے؟ 796 00:44:32,510 --> 00:44:32,865 MM-HM؟ 797 00:44:32,865 --> 00:44:38,040 >> طالب علم: اگر آپ کو ایک متغیر کی ابتدا کر سکتے ہیں اس کے بعد استعمال کیا جائے گا کہ ن لمبائی کی طرح 798 00:44:38,040 --> 00:44:39,600 بعد تقریب میں؟ 799 00:44:39,600 --> 00:44:42,060 >> JASON HIRSCHHORN: تو ابتدا (ن) کے لئے ایک متغیر کی حد کے، 800 00:44:42,060 --> 00:44:42,900 اور ہم اس کے بعد استعمال کرتے ہیں؟ 801 00:44:42,900 --> 00:44:47,070 لیکن اس وقت ہم صرف لمبائی اور ہم کو اپ ڈیٹ اب بھی اس مسئلہ میں چلاتے ہیں ہم کہاں 802 00:44:47,070 --> 00:44:51,180 ہمارا مسئلہ کی لمبائی کو کاٹ، لیکن ہم، اصل میں، جہاں کبھی پتہ نہیں 803 00:44:51,180 --> 00:44:52,510 کہ لمبائی پر نقشے. 804 00:44:52,510 --> 00:44:54,790 >> طالب علم: ایسا نہیں جا رہا ہے تم کہہ رہے ہو اس کے بعد جب، چھوڑ، تلاش، 805 00:44:54,790 --> 00:44:55,746 حق کی تلاش؟ 806 00:44:55,746 --> 00:44:57,640 آپ کو ایک مختلف پر جانے کے لئے جا رہے ہیں آپ کے علاقے - 807 00:44:57,640 --> 00:44:59,110 >> JASON HIRSCHHORN: ہم جا رہے ہیں ایک ایسے علاقے میں، لیکن کس طرح ہم جانتے ہیں 808 00:44:59,110 --> 00:45:01,150 پر جانے کے لئے جس کی ہیں؟ 809 00:45:01,150 --> 00:45:03,800 ہم صرف صف اور اس ہے تو (ن)، ہم کیسے جانتے ہو جہاں 810 00:45:03,800 --> 00:45:05,050 صف میں جانے. 811 00:45:05,050 --> 00:45:05,900 پیٹھ میں، جی ہاں؟ 812 00:45:05,900 --> 00:45:07,507 >> طالب علم: اگر آپ ہے، کی طرح، ایک کم پابند اور ایک پابند بالائی رکن کی یا 813 00:45:07,507 --> 00:45:08,586 کچھ اس طرح؟ 814 00:45:08,586 --> 00:45:09,060 >> JASON HIRSCHHORN: ٹھیک ہے. 815 00:45:09,060 --> 00:45:10,780 تو یہ ایک اور خیال ہے. 816 00:45:10,780 --> 00:45:13,490 بلکہ صرف کا ٹریک رکھنے کے مقابلے میں سائز، ہم کم کے ٹریک رکھنے کے لئے اور 817 00:45:13,490 --> 00:45:14,770 پابند بالائی متغیر. 818 00:45:14,770 --> 00:45:17,840 تو ہم کس طرح سے سائز حساب ہے کم جانے اور جانے اوپری؟ 819 00:45:17,840 --> 00:45:18,520 >> [INTERPOSING آوازیں] 820 00:45:18,520 --> 00:45:19,710 >> JASON HIRSCHHORN: باقی نکالنا. 821 00:45:19,710 --> 00:45:23,650 اور بھی کم کا ٹریک رکھنے پابند اور اوپری ہمیں بتائیں پابند، 822 00:45:23,650 --> 00:45:26,215 ہم ان دونوں کی تلاش کر رہے ہیں؟ 823 00:45:26,215 --> 00:45:28,220 ہم یہاں پر ان دو کی تلاش کر رہے ہیں؟ 824 00:45:28,220 --> 00:45:29,540 ہم مشرق کے دو تلاش کر رہے ہیں؟ 825 00:45:29,540 --> 00:45:32,810 شاید نہیں مشرق دو، کیونکہ اس، اصل میں، بائنری تلاش ہے. 826 00:45:32,810 --> 00:45:37,320 لیکن اب ہم سائز کو حاصل کرنے کے قابل ہو جائے گا، بلکہ صف کے حدود. 827 00:45:37,320 --> 00:45:40,020 جوہر میں، ہم اپنے وشال ہے تو فون بک، ہم نصف میں چیر. 828 00:45:40,020 --> 00:45:42,990 چھوٹے اب ہم کہاں جانتے ہیں فون بک ہے. 829 00:45:42,990 --> 00:45:45,260 لیکن ہم اصل ripping کے نہیں کر رہے ہیں نصف میں فون کی کتاب. 830 00:45:45,260 --> 00:45:48,570 ہم اب بھی جاننے کی ضرورت ہے جہاں ہمارا مسئلہ کی نئی حد ہے. 831 00:45:48,570 --> 00:45:51,645 کسی کو کوئی سوال ہے اس کے بارے میں؟ 832 00:45:51,645 --> 00:45:52,440 جی ہاں؟ 833 00:45:52,440 --> 00:45:56,020 >> طالب علم: یہ ایک پیدا کی طرف سے کام کریں گے متغیر، میں، آپ تو صرف میں منتقل ہے کہ 834 00:45:56,020 --> 00:46:00,770 اس میں رشتہ دار کی پوزیشن موجودہ پوزیشن، اور لمبائی، ن؟ 835 00:46:00,770 --> 00:46:01,710 >> JASON HIRSCHHORN اور میں کیا ہے؟ 836 00:46:01,710 --> 00:46:04,110 >> طالب علم: میں طرح طرح کی طرح - 837 00:46:04,110 --> 00:46:08,040 کی طرح آپ میں ہونا ابتدا کریں گے صف کے وسط کی پوزیشن. 838 00:46:08,040 --> 00:46:12,540 اور پھر، اگر پوزیشن پر قیمت میں پایا میں صف کے وسط 839 00:46:12,540 --> 00:46:17,870 کی آپ کو ضرورت کی قیمت سے کم ہو، اب میں صف کی لمبائی ہو جاتا ہے، اس کے علاوہ 840 00:46:17,870 --> 00:46:19,215 میں کی قیمت 2 سے تقسیم. 841 00:46:19,215 --> 00:46:20,270 کی طرح، دیکھ، تم میں منتقل - 842 00:46:20,270 --> 00:46:20,770 >> JASON HIRSCHHORN: ٹھیک ہے. 843 00:46:20,770 --> 00:46:21,165 >> طالب علم: - تک - 844 00:46:21,165 --> 00:46:24,010 >> JASON HIRSCHHORN: تو میں نے تقریبا ہوں کام کریں گے کہ مثبت. 845 00:46:24,010 --> 00:46:26,800 لیکن بات کیا جا رہا ہے، آپ کو دو کی ضرورت ہے یہاں کی معلومات کے ٹکڑے ٹکڑے. 846 00:46:26,800 --> 00:46:30,050 آپ، شروع اور ختم ہونے کے ساتھ یہ کر سکتے ہیں یا آپ پھر سائز کے ساتھ کیا، کر سکتے ہیں اور 847 00:46:30,050 --> 00:46:31,060 کچھ مارکر. 848 00:46:31,060 --> 00:46:32,630 لیکن آپ کو دو ٹکڑے کی ضرورت ہے یہاں معلومات کے. 849 00:46:32,630 --> 00:46:34,160 آپ کو صرف ایک کے ساتھ کی طرف سے حاصل نہیں کر سکتے. 850 00:46:34,160 --> 00:46:35,830 کہ سمجھ میں آتا ہے ہے؟ 851 00:46:35,830 --> 00:46:39,560 >> تو ہم کے ذریعے جانے کے لئے جا رہے ہیں، اور ہم کیا کرنے جا رہے ہیں [اشراوی] 852 00:46:39,560 --> 00:46:41,330 اور کچھ مارکر بنانے کے. 853 00:46:41,330 --> 00:46:42,690 تو آپ کو آپ کے کوڈ میں نے کیا لکھا؟ 854 00:46:42,690 --> 00:46:46,190 >> طالب علم: میں نے صرف اتنا کہا INT پابند ایک 0 کے برابر ہے. 855 00:46:46,190 --> 00:46:47,790 >> JASON HIRSCHHORN: کی کال کرتے ہیں کہ INT، شروع. 856 00:46:47,790 --> 00:46:49,140 >> طالب علم: ٹھیک ہے. 857 00:46:49,140 --> 00:46:50,590 >> JASON HIRSCHHORN: یہ کرتا ہے میرے لئے زیادہ احساس. 858 00:46:50,590 --> 00:46:51,670 اور؟ 859 00:46:51,670 --> 00:46:54,340 >> طالب علم: میں ختم ہونے والے INT، مجھے لگتا ہے، انہوں نے کہا کہ. 860 00:46:54,340 --> 00:46:55,870 >> JASON HIRSCHHORN: ختم سیریز: Int. 861 00:46:55,870 --> 00:46:57,640 >> طالب علم: میں، لگتا ہے، (ن) مائنس 1 یا اس طرح کچھ. 862 00:46:57,640 --> 00:46:59,100 کی طرح، آخری عنصر. 863 00:46:59,100 --> 00:47:02,310 >> JASON HIRSCHHORN: تو آپ نے لکھا، INT برابر 0، نیم وقفہ، اور int شروع 864 00:47:02,310 --> 00:47:04,320 آخر ن مائنس 1، نیم وقفہ برابر. 865 00:47:04,320 --> 00:47:06,850 تو بنیادی طور پر، ہم کیا کر رہے ہیں یہاں، سب سے پہلے 0 پوزیشن. 866 00:47:06,850 --> 00:47:09,570 ہم arrays میں جانتے ہیں کے طور پر، وہ نہیں جاتے N کرنے کے لئے، وہ 1 ن مائنس جانا. 867 00:47:09,570 --> 00:47:11,110 تو ہم ہمارے صف سے کچھ حد ہے. 868 00:47:11,110 --> 00:47:15,730 اور ان کی ابتدائی حد ہو ہمارا مسئلہ کی ابتدائی حد. 869 00:47:15,730 --> 00:47:16,640 ٹھیک ہے. 870 00:47:16,640 --> 00:47:19,200 تو یہ اچھا لگتا ہے. 871 00:47:19,200 --> 00:47:22,380 پھر ہم نے، واپس اس لائن پر جاتے ہیں جبکہ فہرست کی لمبائی، 0 سے بڑا ہے 872 00:47:22,380 --> 00:47:24,752 کیا، بجائے اس کے (ن) کے، چاہئے ہم یہاں میں ڈال دیا؟ 873 00:47:24,752 --> 00:47:28,820 >> طالب علم: مائنس آغاز ختم لکھیں. 874 00:47:28,820 --> 00:47:34,780 >> JASON HIRSCHHORN: مائنس ختم کرتے ہوئے شروع 0 سے بڑا ہے؟ 875 00:47:34,780 --> 00:47:35,480 ٹھیک ہے. 876 00:47:35,480 --> 00:47:37,730 اور ہم چاہتے ہیں، کر سکتے ہیں کہ تھوڑا سا اچھا، کیا 877 00:47:37,730 --> 00:47:38,980 اور ہم ایسا کر سکتے ہیں؟ 878 00:47:38,980 --> 00:47:41,650 879 00:47:41,650 --> 00:47:43,412 ہم صاف کرنے کے لئے چاہتے تھے اپ تھوڑا سا اس کوڈ؟ 880 00:47:43,412 --> 00:47:46,716 881 00:47:46,716 --> 00:47:48,180 کس طرح ہم 0 سے چھٹکارا حاصل کر سکتے ہیں؟ 882 00:47:48,180 --> 00:47:51,560 883 00:47:51,560 --> 00:47:52,690 یہ صرف ایک سٹائل سوال ہے. 884 00:47:52,690 --> 00:47:53,690 یہ اب صحیح ہے. 885 00:47:53,690 --> 00:47:54,870 >> طالب علم: خاتمہ نہیں کرتا برابر آغاز؟ 886 00:47:54,870 --> 00:47:55,740 >> JASON HIRSCHHORN: ہم کیا کر سکتے ہیں؟ 887 00:47:55,740 --> 00:47:56,730 >> [INTERPOSING آوازیں] 888 00:47:56,730 --> 00:47:57,330 >> طالب علم: ختم زیادہ ہے؟ 889 00:47:57,330 --> 00:47:57,720 >> JASON HIRSCHHORN: جی ہاں. 890 00:47:57,720 --> 00:48:01,110 ختم جبکہ ہم صرف کر سکتے ہیں آغاز سے بڑا ہے. 891 00:48:01,110 --> 00:48:03,580 ٹھیک ہے. 892 00:48:03,580 --> 00:48:06,240 ہم دوسری طرف کرنے کے لئے شروع میں شامل اس کے، اور ہم 0 سے چھٹکارا مل گیا. 893 00:48:06,240 --> 00:48:08,000 تو یہ صرف ایک لگتا ہے تھوڑا سا کلینر. 894 00:48:08,000 --> 00:48:08,990 ٹھیک ہے. 895 00:48:08,990 --> 00:48:11,460 فہرست کی لمبائی 0 ہے جبکہ تو،، ہم نے لکھا کہ، ختم، جبکہ زیادہ ہے 896 00:48:11,460 --> 00:48:12,240 آغاز سے. 897 00:48:12,240 --> 00:48:19,840 ہم اپنے ضروری میں ڈال دیا جا رہے ہیں گھوبگھرالی منحنی خطوط وحدانی، اور اس کے بعد سب سے پہلی چیز 898 00:48:19,840 --> 00:48:22,090 ہم کرنا چاہتے ہیں پر نظر ہے ایک چھوٹی سی فہرست میں ان. 899 00:48:22,090 --> 00:48:22,510 تم نے؟ 900 00:48:22,510 --> 00:48:23,320 کیا آپ مجھے دے سکتے ہیں - 901 00:48:23,320 --> 00:48:26,460 >> طالب علم: اگر قوسین قیمت مربع بریکٹ - 902 00:48:26,460 --> 00:48:30,450 >> JASON HIRSCHHORN: قوسین تو قیمت مربع بریکٹ. 903 00:48:30,450 --> 00:48:33,210 >> طالب علم: 2 کی طرف سے تقسیم کو ختم. 904 00:48:33,210 --> 00:48:33,952 >> JASON HIRSCHHORN: ختم؟ 905 00:48:33,952 --> 00:48:35,280 >> طالب علم: میں نے آپ کے ساتھ ایک مسئلہ دیکھ - 906 00:48:35,280 --> 00:48:35,750 >> JASON HIRSCHHORN: ٹھیک ہے. 907 00:48:35,750 --> 00:48:39,150 ٹھیک ہے، مشرق کی طرف دیکھو. 908 00:48:39,150 --> 00:48:41,226 ہم کس طرح مشرق کیا ہے پتہ ہے؟ 909 00:48:41,226 --> 00:48:42,450 جی ہاں. 910 00:48:42,450 --> 00:48:43,070 تو مجھے اس کوڈ کو خارج کر دیں. 911 00:48:43,070 --> 00:48:46,360 ہم کس طرح مشرق کیا ہے پتہ ہے؟ 912 00:48:46,360 --> 00:48:48,003 کچھ میں، آپ کو شروع ہے جب اور آخر، کس طرح آپ کو تلاش کرتے ہیں 913 00:48:48,003 --> 00:48:48,876 مشرق؟ 914 00:48:48,876 --> 00:48:49,590 >> طالب علم: آپ اوسط. 915 00:48:49,590 --> 00:48:51,820 >> طالب علم: آپ کو ان میں شامل کریں ایک دوسرے کے ساتھ اور پھر - 916 00:48:51,820 --> 00:48:53,150 >> JASON HIRSCHHORN ان کریں ایک دوسرے کے ساتھ اور پھر؟ 917 00:48:53,150 --> 00:48:54,090 >> طالب علم: اور آپ اوسط. 918 00:48:54,090 --> 00:48:55,050 2 کی طرف سے تقسیم. 919 00:48:55,050 --> 00:48:56,500 >> JASON HIRSCHHORN ان کریں ایک دوسرے کے ساتھ اور 2 کی طرف سے تقسیم. 920 00:48:56,500 --> 00:48:59,400 تو int مشرق برابر ہے؟ 921 00:48:59,400 --> 00:49:01,120 ٹام، تم مجھے دے سکتے ہیں؟ 922 00:49:01,120 --> 00:49:03,550 >> طالب علم: آغاز کے علاوہ ختم - 923 00:49:03,550 --> 00:49:04,950 >> JASON HIRSCHHORN: آغاز پلس ختم. 924 00:49:04,950 --> 00:49:06,880 >> طالب علم: تمام، بریکٹ، 2 کی طرف سے تقسیم کیا گیا. 925 00:49:06,880 --> 00:49:10,940 >> JASON HIRSCHHORN: تمام، قوسین میں، 2 کی طرف سے تقسیم کیا گیا. 926 00:49:10,940 --> 00:49:16,300 تو ہے کہ مجھے مشرق دیتا ہے کچھ بھی، صحیح؟ 927 00:49:16,300 --> 00:49:18,980 >> طالب علم: آپ کو اسے دور کرنے کی ضرورت ہے. 928 00:49:18,980 --> 00:49:19,990 >> JASON HIRSCHHORN: آپ کیا مطلب، میں نے اس کے لئے منہاج القرآن کی ضرورت ہے؟ 929 00:49:19,990 --> 00:49:20,400 >> [INTERPOSING آوازیں] 930 00:49:20,400 --> 00:49:24,520 >> طالب علم: کیونکہ یہ ایک عجیب ہے تعداد، تو اس طرح ہے - 931 00:49:24,520 --> 00:49:25,440 >> JASON HIRSCHHORN: ٹھیک ہے، ٹھیک ہے. 932 00:49:25,440 --> 00:49:26,360 تو میں نے اسے پکڑ دھکڑ کر سکتے ہیں. 933 00:49:26,360 --> 00:49:33,350 یہ ایک طاق، ایک 5 لیکن اگر، میں کر سکتا ہوں دور مشرق سے 1 لے. 934 00:49:33,350 --> 00:49:35,665 یا پھر یہ اس سے بھی بڑی تعداد ہے، بلکہ، کہ ایک بہتر معاملہ ہے. 935 00:49:35,665 --> 00:49:39,600 یہ 4 ہے تو، ہم صرف 4 ہے، میں لے جا سکتے ہیں سب سے پہلے "مشرق"، اقتباس، unquote جو یا 936 00:49:39,600 --> 00:49:41,760 دوسری "مشرق" ایک. 937 00:49:41,760 --> 00:49:46,390 یا تو ایک بائنری تلاش کے لئے کام کریں گے، تو میں نے اصل میں یہ منہاج القرآن کی ضرورت نہیں ہے. 938 00:49:46,390 --> 00:49:48,640 لیکن ایک دوسری چیز میں ہے اس لائن کو دیکھنے کے لئے کی ضرورت ہے. 939 00:49:48,640 --> 00:49:50,530 ہم، ابھی تک یہ احساس نہیں کر سکتے ہیں لیکن ہم اسے واپس آ جائیں گے. 940 00:49:50,530 --> 00:49:53,200 اس لائن اصل میں اب بھی کیونکہ ایک اور چیز کی ضرورت ہے. 941 00:49:53,200 --> 00:49:55,990 >> لیکن اب تک، ہم نے لکھا ہے کوڈ کی چار لائنوں. 942 00:49:55,990 --> 00:49:58,120 ہم اپنے آغاز ہے اور مارکر ختم. 943 00:49:58,120 --> 00:50:01,320 ہم نقشے جو ہمارے جبکہ لوپ، ہے پر براہ راست اپنے pseudocode پر. 944 00:50:01,320 --> 00:50:05,790 ہم نقشے کہ مشرق کی طرف دیکھ رہے ہیں براہ راست اپنے pseudocode پر. 945 00:50:05,790 --> 00:50:09,070 میں نے اس کے مشرق کو جاتا ہے کا کہنا ہے کہ فہرست میں، کوڈ کی اس لائن. 946 00:50:09,070 --> 00:50:11,560 اور پھر، ایک بار ہم کے درمیان جانا فہرست، ہم کرنے کی ضرورت ہے اگلی بات 947 00:50:11,560 --> 00:50:14,880 ہماری قیمت کے لئے ہے تو چیک ہے pseudocode ہم نے پہلے لکھا تھا. 948 00:50:14,880 --> 00:50:17,100 >> تو ہم کس طرح کی جانچ پڑتال کرتے ہیں تو ہماری قیمت فہرست کے درمیان میں ہے؟ 949 00:50:17,100 --> 00:50:17,300 آپ. 950 00:50:17,300 --> 00:50:18,511 تم نے یہ کیوں نہیں کرتے؟ 951 00:50:18,511 --> 00:50:23,070 >> طالب علم: ہماری قیمت ہے ہے تو مشرق میں برابر ہے 952 00:50:23,070 --> 00:50:24,592 ہم نے مقرر - جو کچھ بھی 953 00:50:24,592 --> 00:50:26,190 میں برابر برابر کا مطلب - 954 00:50:26,190 --> 00:50:26,690 >> JASON HIRSCHHORN: یہ - 955 00:50:26,690 --> 00:50:27,940 ٹھیک ہے. 956 00:50:27,940 --> 00:50:30,080 957 00:50:30,080 --> 00:50:32,170 >> طالب علم: مجھے یقین نہیں ہے کیا متغیر ہم تلاش کر رہے ہیں 958 00:50:32,170 --> 00:50:32,850 کے لئے اگرچہ، ہے کیونکہ - 959 00:50:32,850 --> 00:50:33,330 >> [INTERPOSING آوازیں] 960 00:50:33,330 --> 00:50:34,520 >> طالب علم: [اشراوی]. 961 00:50:34,520 --> 00:50:35,060 >> JASON HIRSCHHORN: بالکل. 962 00:50:35,060 --> 00:50:37,260 تقریب کے اعلان کے مطابق، ہم ایک قیمت کے لئے تلاش کر رہے ہیں. 963 00:50:37,260 --> 00:50:39,760 تو ہم نے ایک قیمت کے لئے تلاش کر رہے ہیں اقدار کی ایک صف میں. 964 00:50:39,760 --> 00:50:41,080 تو آپ بالکل ٹھیک کہہ رہے ہو. 965 00:50:41,080 --> 00:50:45,040 آپ کیا کریں گے، تو کھلی قوس قیمت بریکٹ مشرق بریکٹ برابر بند کر دیا 966 00:50:45,040 --> 00:50:49,930 اندر کی قیمت کے برابر ہے، اور ہمیں کیا ضرورت ہے؟ 967 00:50:49,930 --> 00:50:51,230 تو ہماری قیمت ہے وہاں، کیا ہم کیا کرنے کی ضرورت ہے؟ 968 00:50:51,230 --> 00:50:51,420 >> [INTERPOSING آوازیں] 969 00:50:51,420 --> 00:50:52,160 >> طالب علم: صفر واپس. 970 00:50:52,160 --> 00:50:53,070 >> JASON HIRSCHHORN: حقیقی واپس. 971 00:50:53,070 --> 00:50:54,790 >> طالب علم: یہ سچ ہے واپس. 972 00:50:54,790 --> 00:50:57,856 >> JASON HIRSCHHORN: مائیکل، اس لائن کیا کرتا ہے؟ 973 00:50:57,856 --> 00:51:01,105 >> طالب علم: [اشراوی] پروگرام کو چلانے کے ہے اس کورس، اور اس سے زیادہ ہے، اور 974 00:51:01,105 --> 00:51:01,920 آپ کیا کرنے کی ضرورت ہے؟ 975 00:51:01,920 --> 00:51:03,030 >> JASON HIRSCHHORN: پروگرام یا کیا؟ 976 00:51:03,030 --> 00:51:03,700 اس صورت میں؟ 977 00:51:03,700 --> 00:51:04,210 >> طالب علم: فنکشن. 978 00:51:04,210 --> 00:51:05,170 >> JASON HIRSCHHORN: فنکشن. 979 00:51:05,170 --> 00:51:08,420 اور اس طرح، کہا جاتا ہے، جو کچھ بھی کرنے کے لئے واپس کرنے کے لئے یہ اور یہ سچ ہے، اس کی قیمت دے. 980 00:51:08,420 --> 00:51:09,890 بالکل صحیح. 981 00:51:09,890 --> 00:51:10,170 مین. 982 00:51:10,170 --> 00:51:12,035 واپسی کی قسم کیا ہے اہم، مائیکل؟ 983 00:51:12,035 --> 00:51:16,480 984 00:51:16,480 --> 00:51:17,150 >> طالب علم: INT، عددی؟ 985 00:51:17,150 --> 00:51:18,080 >> JASON HIRSCHHORN: INT، بالکل. 986 00:51:18,080 --> 00:51:18,680 ایک عددی. 987 00:51:18,680 --> 00:51:20,980 اس بات کا یقین کرنے کے لئے صرف ایک سوال تھا تم لوگ اس کے سب سے اوپر پر کیا گیا ہے. 988 00:51:20,980 --> 00:51:24,250 یہ عام طور پر ہے، تو کیا واپس کرتا ہے تمام چیزوں کو اچھی طرح سے کام کر رہے ہیں؟ 989 00:51:24,250 --> 00:51:24,520 >> طالب علم: صفر. 990 00:51:24,520 --> 00:51:24,820 >> JASON HIRSCHHORN: صفر. 991 00:51:24,820 --> 00:51:25,430 بالکل صحیح. 992 00:51:25,430 --> 00:51:28,790 >> طالب علم: یہ صرف صحیح واپس تو، دی جا کوئی معلومات نہیں ہے 993 00:51:28,790 --> 00:51:30,675 کے بارے میں کیا - 994 00:51:30,675 --> 00:51:34,040 اوہ، یہ صرف کہہ رہا ہے کہ قیمت صف کے اندر ہے. 995 00:51:34,040 --> 00:51:35,350 >> JASON HIRSCHHORN: بالکل. 996 00:51:35,350 --> 00:51:38,080 اس پروگرام کے بارے میں معلومات نہیں دے رہی قیمت ہے کہاں کی. 997 00:51:38,080 --> 00:51:41,850 یہ صرف جی ہاں، ہم نے محسوس کیا، کہہ رہا ہے یہ، یا نہیں، ہم اسے تلاش نہیں کیا. 998 00:51:41,850 --> 00:51:42,990 تو پتہ ہے، تو حقیقی واپس. 999 00:51:42,990 --> 00:51:45,500 ٹھیک ہے، اصل میں ہم صرف کیا کہ واقعی فوری طور پر کوڈ کے کہ ایک لائن کے ساتھ. 1000 00:51:45,500 --> 00:51:47,500 تو میں pseudocode کی اس لائن کو منتقل کریں گے. 1001 00:51:47,500 --> 00:51:50,045 >> طالب علم: ہم نے کی ضرورت نہیں ہے صف کو تبدیل کرنے کے لئے؟ 1002 00:51:50,045 --> 00:51:52,830 یہ درست، اقدار، قدر نہیں ہونا چاہئے؟ 1003 00:51:52,830 --> 00:51:53,430 >> JASON HIRSCHHORN: معذرت. 1004 00:51:53,430 --> 00:51:54,010 آپ کا شکریہ. 1005 00:51:54,010 --> 00:51:54,800 >> طالب علم: جی ہاں. 1006 00:51:54,800 --> 00:51:55,850 >> JASON HIRSCHHORN: یہ لائن اقدار ہونا چاہئے. 1007 00:51:55,850 --> 00:51:57,150 بالکل صحیح. 1008 00:51:57,150 --> 00:51:57,920 ٹھیک ہے. 1009 00:51:57,920 --> 00:51:59,170 تو ہم مشرق فہرست پر دیکھا ہے. 1010 00:51:59,170 --> 00:52:00,790 تعداد پایا واپس اگر یہ سچ ہے. 1011 00:52:00,790 --> 00:52:04,470 تو، اپنے pseudocode کے ساتھ جاری مشرق زیادہ ہے، تلاش چھوڑ دیا. 1012 00:52:04,470 --> 00:52:09,640 تو تو میں، یہاں میں تھا تعداد اعلی، تلاش چھوڑ دیا. 1013 00:52:09,640 --> 00:52:12,700 1014 00:52:12,700 --> 00:52:14,462 کانسٹنٹائن، آپ کو دے سکتا آپ کے وزٹرز کا کوڈ کے اس لائن؟ 1015 00:52:14,462 --> 00:52:17,240 1016 00:52:17,240 --> 00:52:23,520 >> طالب علم: مشرق اگر ویلیو - 1017 00:52:23,520 --> 00:52:24,890 >> JASON HIRSCHHORN: تو قیمت ہے - 1018 00:52:24,890 --> 00:52:28,890 کھلی قوس بریکٹ اہمیت دیتا ہے تو مشرق قریب بریکٹ - 1019 00:52:28,890 --> 00:52:31,500 >> طالب علم: قیمت سے چھوٹا ہے؟ 1020 00:52:31,500 --> 00:52:32,760 >> JASON HIRSCHHORN: سے بھی کم ہے. 1021 00:52:32,760 --> 00:52:33,800 >> طالب علم: قیمت سے کم. 1022 00:52:33,800 --> 00:52:34,060 >> JASON HIRSCHHORN: قیمت. 1023 00:52:34,060 --> 00:52:35,310 ٹھیک ہے، اصل میں، آپ چاہتے ہیں تعداد چیک - 1024 00:52:35,310 --> 00:52:38,310 1025 00:52:38,310 --> 00:52:38,490 معذرت. 1026 00:52:38,490 --> 00:52:39,140 یہ تھوڑا سا مبہم ہے. 1027 00:52:39,140 --> 00:52:43,920 لیکن اور اگر میں نمبر فہرست کے درمیان میں زیادہ ہے. 1028 00:52:43,920 --> 00:52:45,170 >> طالب علم: ٹھیک ہے، اوہ. 1029 00:52:45,170 --> 00:52:49,800 1030 00:52:49,800 --> 00:52:50,410 >> JASON HIRSCHHORN: میں نے اس کو تبدیل کریں گے. 1031 00:52:50,410 --> 00:52:55,060 مشرق زیادہ ہے اور اگر، ہم ٹھیک ہے، بائیں طرف تلاش کرنا چاہتے ہیں؟ 1032 00:52:55,060 --> 00:52:57,310 اور ہم اندر کیا کرتے ہیں یہ شرط ہے؟ 1033 00:52:57,310 --> 00:53:03,660 1034 00:53:03,660 --> 00:53:07,510 >> طالب علم: میں نے ایک چھوٹی سی تبدیلی کر سکتے ہیں اگر حالت، اور کرنے کے لئے اسے تبدیل؟ 1035 00:53:07,510 --> 00:53:08,380 >> JASON HIRSCHHORN: اگر نہیں تو؟ 1036 00:53:08,380 --> 00:53:09,270 ٹھیک ہے. 1037 00:53:09,270 --> 00:53:12,840 تو اس کوڈ پر عمل کیا جائے گا اسی کے بارے میں. 1038 00:53:12,840 --> 00:53:18,620 لیکن اس کے علاوہ، اگر کا استعمال کرتے ہوئے کے بارے میں اچھی بات یہ ہے ، یا اگر نہیں تو اگر کسی اگر، اور، تو 1039 00:53:18,620 --> 00:53:22,320 ان میں سے صرف ایک کی جا رہی ہے کہ اس کا مطلب جانچ پڑتال کی جائے، ان کے تمام تین، 1040 00:53:22,320 --> 00:53:23,290 ممکنہ طور پر. 1041 00:53:23,290 --> 00:53:25,530 اور یہ کہ یہ تھوڑا سا بنا دیتا ہے ہے کہ کمپیوٹر پر اچھے 1042 00:53:25,530 --> 00:53:26,670 آپ کے پروگرام چل رہا ہے. 1043 00:53:26,670 --> 00:53:27,620 >> تو [؟ کانسٹنٹائن،؟] 1044 00:53:27,620 --> 00:53:31,330 ہم، اقدار ورنہ اگر، اس لائن کے اندر ہیں بریکٹ مشرق بند بریکٹ 1045 00:53:31,330 --> 00:53:32,260 قیمت سے زیادہ ہے. 1046 00:53:32,260 --> 00:53:33,150 ہمیں کیا ضرورت ہے؟ 1047 00:53:33,150 --> 00:53:33,970 ہم نے چھوڑ دیا تلاش کرنے کی ضرورت. 1048 00:53:33,970 --> 00:53:35,220 ہم اس کو کس طرح کرتے ہیں؟ 1049 00:53:35,220 --> 00:53:46,960 1050 00:53:46,960 --> 00:53:48,720 میں آپ کو ایک آغاز دینے جا رہا ہوں. 1051 00:53:48,720 --> 00:53:52,210 >> ہم نے ان دو چیزیں ہیں شروع اور ختم. 1052 00:53:52,210 --> 00:53:57,340 تو کیا ہو کرنے کی ضرورت ہے شروع کرنے کے لئے؟ 1053 00:53:57,340 --> 00:53:59,640 آپ کے بائیں تلاش کرنے کے لئے چاہتے ہیں تو فہرست، ہم اپنے موجودہ آغاز حاصل. 1054 00:53:59,640 --> 00:54:01,080 کیا ہم ایسا کرنے کی ضرورت ہے؟ 1055 00:54:01,080 --> 00:54:04,220 >> طالب علم: ہم شروع قائم مشرق کے علاوہ 1. 1056 00:54:04,220 --> 00:54:05,120 >> JASON HIRSCHHORN: تو ہم ہیں بائیں تلاش؟ 1057 00:54:05,120 --> 00:54:06,250 >> طالب علم: معذرت، مشرق مائنس - 1058 00:54:06,250 --> 00:54:11,310 تو آخر مشرق کی جائے گی مائنس 1 اور آغاز - 1059 00:54:11,310 --> 00:54:12,450 >> JASON HIRSCHHORN: اور کیا شروع کرنے کے لئے ہوتا ہے؟ 1060 00:54:12,450 --> 00:54:13,210 >> طالب علم: یہ ایک ہی رہتا ہے. 1061 00:54:13,210 --> 00:54:14,120 >> JASON HIRSCHHORN: تو معنی ایک ہی رہتا ہے. 1062 00:54:14,120 --> 00:54:16,040 ہم بائیں تلاش کر رہے ہیں، تو ہم ہیں اسی آغاز کا استعمال کرتے ہوئے - 1063 00:54:16,040 --> 00:54:16,860 بالکل صحیح. 1064 00:54:16,860 --> 00:54:17,870 اور آخر؟ 1065 00:54:17,870 --> 00:54:19,390 معذرت، کیا کرتا ہے پھر برابر ختم؟ 1066 00:54:19,390 --> 00:54:20,750 >> طالب علم: مشرق مائنس 1. 1067 00:54:20,750 --> 00:54:21,620 >> JASON HIRSCHHORN مشرق مائنس 1. 1068 00:54:21,620 --> 00:54:23,470 اب، کیوں مائنس 1، مشرق نہ صرف؟ 1069 00:54:23,470 --> 00:54:32,870 1070 00:54:32,870 --> 00:54:35,570 >> طالب علم: مشرق سے باہر ہے ہم نے کی وجہ سے، پہلے ہی تصویر 1071 00:54:35,570 --> 00:54:36,700 اسے باہر کی جانچ پڑتال کی ہے؟ 1072 00:54:36,700 --> 00:54:37,630 >> JASON HIRSCHHORN: ہے بالکل صحیح. 1073 00:54:37,630 --> 00:54:38,580 مشرق تصویر سے باہر ہے. 1074 00:54:38,580 --> 00:54:39,800 ہم نے پہلے ہی مشرق کی جانچ پڑتال. 1075 00:54:39,800 --> 00:54:44,730 تو ہم نے "مشرق" اقتباس نہیں چاہتے unquote جو، میں کرنے کے لئے جاری 1076 00:54:44,730 --> 00:54:46,110 ہم دیکھ رہے ہیں کہ صف. 1077 00:54:46,110 --> 00:54:47,670 تو یہ بہت اچھا ہے. 1078 00:54:47,670 --> 00:54:50,670 >> ورنہ اقدار بریکٹ مشرق زیادہ ہے تو قیمت برابر ختم ہونے سے 1079 00:54:50,670 --> 00:54:51,920 مشرق مائنس 1. 1080 00:54:51,920 --> 00:54:55,060 1081 00:54:55,060 --> 00:54:57,340 جیف، کیا یہ آخری لائن کے بارے میں؟ 1082 00:54:57,340 --> 00:54:58,590 >> طالب علم: نہیں تو. 1083 00:54:58,590 --> 00:55:02,486 1084 00:55:02,486 --> 00:55:06,000 اقدار مشرق قیمت سے کم ہے؟ 1085 00:55:06,000 --> 00:55:07,570 >> JASON HIRSCHHORN: ہم کریں گے اور تم مجھے دے رہے ہیں. 1086 00:55:07,570 --> 00:55:09,310 تم مجھ سے نہیں دیتے تو - 1087 00:55:09,310 --> 00:55:12,270 >> طالب علم: تو پھر شروع مشرق کے علاوہ 1 ہو جائے گا. 1088 00:55:12,270 --> 00:55:16,100 1089 00:55:16,100 --> 00:55:19,070 >> JASON HIRSCHHORN: آغاز سے برابر مشرق کے علاوہ 1، ایک بار پھر، کے لئے ایک ہی 1090 00:55:19,070 --> 00:55:20,820 وجہ یہ ہے کہ کانسٹنٹائن پہلے ہمیں دیا. 1091 00:55:20,820 --> 00:55:24,280 اور آخر میں، جو نہیں دیا مجھے ابھی تک کوڈ کی ایک لائن؟ 1092 00:55:24,280 --> 00:55:26,600 جھوٹے، Aleha، واپس کیا ہم یہاں لکھ سکتا ہوں؟ 1093 00:55:26,600 --> 00:55:28,590 >> طالب علم: جھوٹے واپس. 1094 00:55:28,590 --> 00:55:29,320 >> JASON HIRSCHHORN: جھوٹے واپس. 1095 00:55:29,320 --> 00:55:33,340 اور ہم، ایسا کرنے کی ضرورت ہے تو ہم اسے تلاش نہیں، ہم کہنے کی ضرورت 1096 00:55:33,340 --> 00:55:34,080 اسے تلاش نہیں کیا. 1097 00:55:34,080 --> 00:55:36,270 اور ہم واپس جا رہے ہیں نے کہا کہ bool کے، تو ہم ضرور واپس کرنا پڑے 1098 00:55:36,270 --> 00:55:38,150 ایک bool کہیں. 1099 00:55:38,150 --> 00:55:42,590 >> تو اس کوڈ چلانے. 1100 00:55:42,590 --> 00:55:44,520 میں اصل میں کرنے جا رہا ہوں - 1101 00:55:44,520 --> 00:55:45,930 تو ہم ٹرمینل میں ہیں. 1102 00:55:45,930 --> 00:55:47,230 ہم اپنی ونڈو کو صاف کریں گے. 1103 00:55:47,230 --> 00:55:49,270 کی تمام کرتے ہیں. 1104 00:55:49,270 --> 00:55:50,340 ہم ایک غلطی ہے پایا. 1105 00:55:50,340 --> 00:55:54,280 توقع لائن 15 پر ایک غلطی ہے، کے آخر میں نیم وقفہ 1106 00:55:54,280 --> 00:55:54,890 اعلان. 1107 00:55:54,890 --> 00:55:56,454 تو میں کیا بھول گئے؟ 1108 00:55:56,454 --> 00:55:57,230 >> طالب علم: نیم وقفہ. 1109 00:55:57,230 --> 00:56:00,200 >> JASON HIRSCHHORN: نیم وقفہ یہیں تک. 1110 00:56:00,200 --> 00:56:00,950 مجھے لگتا ہے کہ ٹام کوڈ تھا. 1111 00:56:00,950 --> 00:56:01,870 تو ٹام، [اشراوی]. 1112 00:56:01,870 --> 00:56:03,120 صرف مذاق کر رہا. 1113 00:56:03,120 --> 00:56:05,010 1114 00:56:05,010 --> 00:56:07,310 کے سب پھر کرتے ہیں. 1115 00:56:07,310 --> 00:56:10,180 >> طالب علم: کیا ڈراپ باکس ڈائرکٹری ہم اس کے لئے ہونا چاہئے؟ 1116 00:56:10,180 --> 00:56:11,345 >> JASON HIRSCHHORN: تو آپ کر سکتے ہیں صرف اس تھوڑا سا کے لئے دیکھتے ہیں. 1117 00:56:11,345 --> 00:56:16,380 لیکن پھر، آپ کو اس کے منتقل کرنے کے لئے کرنا چاہتا تھا کرنے کی کوشش کریں آپ pset3 ڈائرکٹری کوڈ میں 1118 00:56:16,380 --> 00:56:17,050 اسے باہر، کہ میں نے کیا کیا ہے. 1119 00:56:17,050 --> 00:56:18,600 آپ یہاں محسوس کریں گے تو - معذرت، اچھا سوال ہے. 1120 00:56:18,600 --> 00:56:19,460 >> [؟ LS،؟] 1121 00:56:19,460 --> 00:56:24,700 میں یہاں ہے find.c کوڈ اس ہفتے کی distro کوڈ سے. 1122 00:56:24,700 --> 00:56:26,300 میں helpers.h ہے. 1123 00:56:26,300 --> 00:56:30,010 مجھے لگتا ہے کہ میں نے اصل میں ایک بنانا فائل ہے ان نئے شامل کرنے کے لئے تھوڑا سا ترمیم 1124 00:56:30,010 --> 00:56:30,710 ہم لکھ رہے ہیں فائلوں. 1125 00:56:30,710 --> 00:56:34,120 کہ تمام کوڈ، دستیاب نہیں ہو گا تقسیم کے کوڈ، لیکن نئے 1126 00:56:34,120 --> 00:56:39,510 فائل بنائیں، نئے helpers.h دائر کریں گے ڈاؤن لوڈ، اتارنا کے لئے آن لائن دستیاب ہو. 1127 00:56:39,510 --> 00:56:41,800 ایک بار پھر، تاکہ لوگ ہیں اضافی کوڈ ہم. 1128 00:56:41,800 --> 00:56:46,130 >> تو سب کو، اس لائن کے مطابق،، ​​کی تلاش کرتا ہے ثنائی، بلبلا انتخاب - کرتا 1129 00:56:46,130 --> 00:56:50,930 تمام ان میں سے تین اور میں آگاہ اس کارکردگی کے کوڈ کو تلاش. 1130 00:56:50,930 --> 00:56:54,090 تو عام طور پر، ہم نہیں چاہتے براہ راست check50 کرنے کے لئے. 1131 00:56:54,090 --> 00:56:57,580 ہم اپنے طور پر کچھ ٹیسٹ کو چلانے کے لئے چاہتے ہیں. 1132 00:56:57,580 --> 00:57:11,750 لیکن صرف تو ہم، یہ تھوڑا سا تیز کر سکتے ہیں check50 2013 pset3.find گزر جائے گا 1133 00:57:11,750 --> 00:57:14,630 میرا برا - helpers.c میں. 1134 00:57:14,630 --> 00:57:16,050 >> میں اب بھی نہیں ہیں. 1135 00:57:16,050 --> 00:57:20,670 تو ہم اصل میں جا رہے ہیں حقیقی کے لئے کوڈ کو چلانے کے. 1136 00:57:20,670 --> 00:57:23,570 Usage.find /، آپ کا مطلب ہے کہ کیا پتہ ہے؟ 1137 00:57:23,570 --> 00:57:25,970 >> طالب علم: آپ کو ایک دوسرے کی ضرورت ہے اس پر کمانڈ لائن. 1138 00:57:25,970 --> 00:57:26,980 >> JASON HIRSCHHORN: مجھے اس کی ضرورت ایک دوسری کمانڈ لائن. 1139 00:57:26,980 --> 00:57:30,640 اور تفصیلات کے مطابق، مجھے اس کی ضرورت ہم کے لئے تلاش کر رہے ہیں میں داخل ہونے کی. 1140 00:57:30,640 --> 00:57:33,750 تو 42 کے لئے نظر. 1141 00:57:33,750 --> 00:57:37,030 ہم، کے مطابق میں اسے رکھیں گے کیونکہ ہم ابھی تک ایک طرح کی تقریب نہیں ہے - 1142 00:57:37,030 --> 00:57:41,830 42، 43، 44. 1143 00:57:41,830 --> 00:57:46,240 >> اور کنٹرول D نہیں مل سکا ٹیبل میں انجکشن. 1144 00:57:46,240 --> 00:57:46,505 یہ بری بات ہے. 1145 00:57:46,505 --> 00:57:47,200 یہ یقینی طور پر نہیں ہے. 1146 00:57:47,200 --> 00:57:48,090 کی کچھ کوشش کرتے ہیں. 1147 00:57:48,090 --> 00:57:49,860 میں ڈال دیا کیونکہ شاید یہ ہے شروع میں یہ. 1148 00:57:49,860 --> 00:57:54,490 >> کی 41، 42، 43 کرتے ہیں. 1149 00:57:54,490 --> 00:57:55,012 ہم وہاں چلتے ہیں. 1150 00:57:55,012 --> 00:57:56,400 یہ پتہ چلا ہے. 1151 00:57:56,400 --> 00:58:00,040 صرف، اب آخر میں ڈال دو تو ہم مکمل ہو سکتا ہے - 1152 00:58:00,040 --> 00:58:03,580 40، 41، 42. 1153 00:58:03,580 --> 00:58:05,760 انجکشن کو تلاش نہیں کیا. 1154 00:58:05,760 --> 00:58:07,550 لہذا میں نے یہ پہلے ذکر کیا. 1155 00:58:07,550 --> 00:58:08,980 بدقسمتی سے، میں نے یہ جانتے تھے ہونے جا رہا تھا. 1156 00:58:08,980 --> 00:58:11,490 >> لیکن تعلیمی مقاصد کے لئے، یہ دریافت کرنے کی اچھا ہے. 1157 00:58:11,490 --> 00:58:12,990 یہ کام نہیں کرتا. 1158 00:58:12,990 --> 00:58:16,020 کسی وجہ سے، اسے تلاش نہیں کر سکتے. 1159 00:58:16,020 --> 00:58:18,970 ہم وہاں میں کیا جانتے ہیں، لیکن ہم اس کی تلاش نہیں کر رہے ہیں. 1160 00:58:18,970 --> 00:58:24,140 تو ہم کیا کر سکتے ایک بات کے ذریعے جانا ہے GDB، اسے تلاش، لیکن کسی کو کرتا ہے 1161 00:58:24,140 --> 00:58:27,850 gdb کے ذریعے جانے کے بغیر، ایک ہم مصیبت میں جہاں کا احساس؟ 1162 00:58:27,850 --> 00:58:28,480 [؟ Madu؟ ؟] 1163 00:58:28,480 --> 00:58:30,960 >> طالب علم: میں نے اسے ختم کیا جا سکتا ہے جب لگتا ہے آغاز کے برابر ہے، اور یہ 1164 00:58:30,960 --> 00:58:33,090 صرف ایک عنصر فہرست. 1165 00:58:33,090 --> 00:58:35,560 تو یہ صرف اس کی بجائے اس کو نظر انداز اصل میں اس کی جانچ پڑتال. 1166 00:58:35,560 --> 00:58:36,940 >> JASON HIRSCHHORN: ہے بالکل صحیح. 1167 00:58:36,940 --> 00:58:41,110 آخر آغاز کے برابر ہے تو، ہم کرتے ہیں اب بھی ہماری فہرست میں ایک عنصر ہے؟ 1168 00:58:41,110 --> 00:58:42,480 >> طالب علم: جی ہاں. 1169 00:58:42,480 --> 00:58:45,450 >> JASON HIRSCHHORN: جی ہاں، اصل میں، ہم ایک اور صرف ایک عنصر ہے. 1170 00:58:45,450 --> 00:58:50,500 اور یہ سب سے زیادہ امکان ہے جب ہو گا، ہم نے تجربہ کیا کوڈ کے مطابق، ہم میں ہیں 1171 00:58:50,500 --> 00:58:54,640 ٹیبل یا میں سامنے ٹیبل کے اختتام. 1172 00:58:54,640 --> 00:58:56,000 جہاں شروع اور ہے آخر برابر کی جا رہی ہے 1173 00:58:56,000 --> 00:58:57,820 بائنری تلاش کے ساتھ ایک،. 1174 00:58:57,820 --> 00:59:01,440 تو ان دونوں صورتوں میں یہ کام نہیں کیا، ختم ہونے کی وجہ سے آغاز کے برابر تھا. 1175 00:59:01,440 --> 00:59:06,030 >> لیکن ختم ہونے والے ہیں، آغاز کے برابر ہے اس دیر لوپ پر عمل کرتا ہے؟ 1176 00:59:06,030 --> 00:59:06,390 یہ نہیں کرتا ہے. 1177 00:59:06,390 --> 00:59:08,660 اور ہم کی جانچ پڑتال کر سکتے ہیں کہ پھر gdb کے ذریعے. 1178 00:59:08,660 --> 00:59:14,000 تو ہم کس طرح، اس کوڈ کو ٹھیک کر سکتے ہیں کیونکہ ختم کرتے ہوئے کے برابر ہے جب 1179 00:59:14,000 --> 00:59:16,070 شروع، ہم بھی یہ چاہتے ہیں لوپ کو چلانے کے لئے ہے. 1180 00:59:16,070 --> 00:59:18,620 >> تو ہم 18 لائن کیا حل کر سکتے ہیں؟ 1181 00:59:18,620 --> 00:59:21,060 >> طالب علم: [اشراوی] زیادہ ہے زیادہ یا برابر. 1182 00:59:21,060 --> 00:59:21,700 >> JASON HIRSCHHORN: بالکل صحیح. 1183 00:59:21,700 --> 00:59:24,600 آخر سے زیادہ ہے جبکہ یا شروع کے برابر. 1184 00:59:24,600 --> 00:59:27,300 تو اب، ہم نے اس کے حاصل کرنے کے لئے بات کو یقینی بنائیں آخر میں کونے کے کیس. 1185 00:59:27,300 --> 00:59:27,870 اور دیکھتے ہیں. 1186 00:59:27,870 --> 00:59:29,560 یہ ایک بار چلاتے ہیں. 1187 00:59:29,560 --> 00:59:31,266 >> سب بنا دو. 1188 00:59:31,266 --> 00:59:33,910 ایک بار پھر، آپ کو کرنا پڑے گا صرف یہاں ساتھ کی پیروی. 1189 00:59:33,910 --> 00:59:36,280 41 اس وقت تلاش. 1190 00:59:36,280 --> 00:59:37,360 بس اسے مسلسل رکھنے. 1191 00:59:37,360 --> 00:59:38,210 >> 42 تلاش. 1192 00:59:38,210 --> 00:59:38,930 کے آغاز میں یہ ڈال دو - 1193 00:59:38,930 --> 00:59:41,630 42، 43، 44. 1194 00:59:41,630 --> 00:59:42,860 ہم اسے مل گیا. 1195 00:59:42,860 --> 00:59:47,710 تو یہ واقعی تبدیلی تھی ہم کرنے کی ضرورت ہے. 1196 00:59:47,710 --> 00:59:51,090 >> کہ ہم کوڈنگ کی ایک بہت تھا صرف، بائنری تلاش کیا. 1197 00:59:51,090 --> 00:59:55,760 کسی سے پہلے کسی بھی سوال ہے میرے خیال میں ہم میں لکھا لائنوں میں منتقل 1198 00:59:55,760 --> 00:59:58,750 بائنری تلاش یا ہم کس طرح سوچا ہم اعداد و شمار کیا کیا؟ 1199 00:59:58,750 --> 01:00:01,900 1200 01:00:01,900 --> 01:00:06,270 ہم پر منتقل کرنے سے پہلے، میں نے یہ بھی کی طرف اشارہ کرنا چاہتے ہیں، اس سے اور بڑی سے باہر، ہم مائچترت 1201 01:00:06,270 --> 01:00:09,300 ہماری چھدم کوڈ سے ایک ہمارے کوڈ پر ایک. 1202 01:00:09,300 --> 01:00:11,550 >> ہم اس مشکل بات ہے کیا کے ساتھ کے اعداد و شمار 1203 01:00:11,550 --> 01:00:12,890 شروع اور ختم. 1204 01:00:12,890 --> 01:00:17,380 لیکن آپ، کہ سوچا نہیں تھا بہت لکھا ہوتا 1205 01:00:17,380 --> 01:00:20,740 جیسی کوڈ، کے لئے کو بچانے کے ان سب سے اوپر دو لائنیں. 1206 01:00:20,740 --> 01:00:23,380 اور پھر آپ کو احساس ہوتا ہے جب آپ کو چیک اور صورتوں میں یہ بنایا کہ 1207 01:00:23,380 --> 01:00:24,840 آپ کو کچھ اور کی ضرورت ہے. 1208 01:00:24,840 --> 01:00:28,510 آپ کے بعد کیا تھا تو بھی اگر ہماری لائن چھدم کوڈ کی لائن، آپ کو ہوگا 1209 01:00:28,510 --> 01:00:31,130 کی دو لائنیں لیکن تمام ہو گیا آپ کو لکھنے کے لئے کی ضرورت کوڈ 1210 01:00:31,130 --> 01:00:33,900 >> اور میں شرط لگا سکتا ہوں کے لئے تیار ہو جائے گا کہ تم لوگ تمام ہے کہ سوچا ہوتا 1211 01:00:33,900 --> 01:00:37,940 بہت تیزی سے، آپ کو ڈال کرنے کی ضرورت ہے مارکر کسی قسم کا وہاں میں اعداد و شمار 1212 01:00:37,940 --> 01:00:39,190 تم کہاں تھے باہر. 1213 01:00:39,190 --> 01:00:41,540 1214 01:00:41,540 --> 01:00:44,550 یہی وجہ ہے کہ ایک بار پھر، کرنے کے طاقت ہے چھدم کوڈ وقت سے قبل. 1215 01:00:44,550 --> 01:00:47,310 تو ہم نے تو سب سے پہلے منطق، اور کر سکتے ہیں ہم نحو کے بارے میں پریشان کر سکتے ہیں. 1216 01:00:47,310 --> 01:00:51,470 >> ہم منطق کے بارے میں الجھن گیا تھا جبکہ C میں اس کوڈ لکھنے کی کوشش کر، 1217 01:00:51,470 --> 01:00:53,110 ہم سب گڑبڑ ہو گیا ہوتا. 1218 01:00:53,110 --> 01:00:56,340 اور پھر ہم کے بارے میں سوال کیا جائے گا منطق اور نحو اور meshing 1219 01:00:56,340 --> 01:00:57,320 ان سب کو. 1220 01:00:57,320 --> 01:01:02,170 اور ہم گمشدہ ہو گیا ہوتا جلدی سے ایک بن کر سکتے ہیں میں 1221 01:01:02,170 --> 01:01:04,000 بہت مشکل مسئلہ ہے. 1222 01:01:04,000 --> 01:01:08,680 تو اب پر منتقل انتخاب کی طرح کرنے کے لئے. 1223 01:01:08,680 --> 01:01:10,760 >> ہم نے چھوڑ دیا 20 منٹ ہے. 1224 01:01:10,760 --> 01:01:14,130 تو میں ہم کرنے کے قابل نہیں ہو گا ایک احساس ہے انتخاب کی طرح کے تمام کے ذریعے حاصل کرنے کے لئے 1225 01:01:14,130 --> 01:01:15,940 اور بلبلا طرح. 1226 01:01:15,940 --> 01:01:20,670 لیکن ہم کم از کم کرنے کی کوشش کرتے ہیں انتخاب کی طرح ختم کرنے کے لئے. 1227 01:01:20,670 --> 01:01:23,540 تو ترتیب کا استعمال کرتے ہوئے انتخاب عمل درآمد تقریب کے اعلان کے بعد. 1228 01:01:23,540 --> 01:01:27,530 >> ایک بار پھر، اس سے لیا جاتا ہے مسئلہ سیٹ کی تفصیلات. 1229 01:01:27,530 --> 01:01:31,560 int اقدار بریکٹ، ہے integers کے ایک صف. 1230 01:01:31,560 --> 01:01:33,490 اور int.n اس صف کا سائز ہے. 1231 01:01:33,490 --> 01:01:36,840 سلیکشن طرح کی جا رہی ہے اس صف کو حل کرنے. 1232 01:01:36,840 --> 01:01:43,580 >> انتخاب کی ہماری ذہنی ماڈل فی ترتیب، ہم ھیںچو - 1233 01:01:43,580 --> 01:01:47,720 سب سے پہلے، ہم نے فہرست کے ذریعے سب سے پہلے جانا وقت، سب سے چھوٹی تعداد کو تلاش، 1234 01:01:47,720 --> 01:01:52,860 شروع میں ڈال دیا، دوسرا تلاش سب سے چھوٹی تعداد میں، میں ڈال دیا 1235 01:01:52,860 --> 01:01:56,380 ہم کرنا چاہتے ہیں تو دوسری پوزیشن صعودی میں ترتیب. 1236 01:01:56,380 --> 01:01:58,440 میں آپ کو لکھنے کے لئے مجبور نہیں کر رہا ہوں چھدم کوڈ اب. 1237 01:01:58,440 --> 01:02:01,350 >> لیکن ہم میں ایک کلاس کے طور پر کوڈ سے پہلے پانچ منٹ، ہم لکھنے کے لئے جا رہے ہیں 1238 01:02:01,350 --> 01:02:03,550 چھدم کوڈ تاکہ ہم کچھ احساس ہے کے ہم کہاں جا رہے ہیں. 1239 01:02:03,550 --> 01:02:05,630 تو چھدم کوڈ لکھنے کی کوشش اپنے اپنے طور پر. 1240 01:02:05,630 --> 01:02:08,610 اور پھر اس کو تبدیل کرنے کی کوشش کوڈ میں چھدم کوڈ. 1241 01:02:08,610 --> 01:02:10,740 ہم نے ایک گروپ کے طور پر کیا جائے گا پانچ منٹ میں. 1242 01:02:10,740 --> 01:02:32,560 1243 01:02:32,560 --> 01:02:33,895 >> اور ظاہر کی، مجھے پتہ ہے اگر آپ کوئی سوال ہے. 1244 01:02:33,895 --> 01:03:56,738 1245 01:03:56,738 --> 01:03:58,230 >> طالب علم: یہ ہے کہ؟ 1246 01:03:58,230 --> 01:04:00,280 >> JASON HIRSCHHORN: کتنی دور آپ ملاحظہ مزید دو منٹ میں حاصل کر سکتے ہیں. 1247 01:04:00,280 --> 01:04:01,790 میں نے آپ کو نہیں سمجھ ختم کرنے کے لئے کے قابل ہو جائے. 1248 01:04:01,790 --> 01:04:03,050 لیکن ہم ایک گروپ کے طور پر اس سے زیادہ ہو جائے گا. 1249 01:04:03,050 --> 01:04:57,830 1250 01:04:57,830 --> 01:05:00,630 >> تم سب کو [اشراوی] تو کوڈنگ کر رہے ہیں، تو میں ہوں آپ کیا کر رہے ہیں کو روکنے کے لئے معذرت. 1251 01:05:00,630 --> 01:05:02,530 لیکن ایک گروپ کے طور پر اس کے ذریعے جانے. 1252 01:05:02,530 --> 01:05:07,590 اور پھر، بائنری تلاش، آپ سب کو دے مجھے ایک کوڈ کا زیادہ لائنوں اگر نہیں. 1253 01:05:07,590 --> 01:05:08,530 اس کے لئے آپ کا شکریہ. 1254 01:05:08,530 --> 01:05:11,730 ہم ایک ہی بات کرنے جا رہے ہیں یہاں، ایک گروپ کے طور پر ایک دوسرے کے ساتھ کوڈ. 1255 01:05:11,730 --> 01:05:15,170 >> تو انتخاب کی طرح - کی لکھنے کچھ فوری چھدم کوڈ. 1256 01:05:15,170 --> 01:05:20,380 ذہنی ماڈل فی، کسی نے مجھے دے سکتے ہیں چھدم کوڈ کی پہلی لائن، براہ مہربانی؟ 1257 01:05:20,380 --> 01:05:23,000 1258 01:05:23,000 --> 01:05:24,270 مجھے کیا کرنا چاہتے ہیں؟ 1259 01:05:24,270 --> 01:05:27,070 >> طالب علم: جبکہ فہرست حکم سے باہر ہے. 1260 01:05:27,070 --> 01:05:30,630 >> JASON HIRSCHHORN: ٹھیک ہے، جبکہ فہرست حکم سے باہر ہے. 1261 01:05:30,630 --> 01:05:33,540 اور تم "کے حکم سے باہر؟" کیا مطلب ہے 1262 01:05:33,540 --> 01:05:34,960 >> طالب علم: جبکہ [اشراوی] 1263 01:05:34,960 --> 01:05:36,210 کے مطابق نہیں کیا گیا ہے. 1264 01:05:36,210 --> 01:05:38,460 1265 01:05:38,460 --> 01:05:40,290 >> JASON HIRSCHHORN جبکہ فہرست حکم سے باہر ہے، ہم کیا کرتے ہیں؟ 1266 01:05:40,290 --> 01:05:44,200 مجھے دوسری لائن دے، براہ مہربانی، مارکس. 1267 01:05:44,200 --> 01:05:47,186 >> طالب علم: تو اگلے تلاش سب سے چھوٹی تعداد. 1268 01:05:47,186 --> 01:05:49,000 یہ پوٹ دار ہو گا. 1269 01:05:49,000 --> 01:05:55,140 >> JASON HIRSCHHORN: تو تلاش اگلے سب سے چھوٹی تعداد. 1270 01:05:55,140 --> 01:05:56,460 اور پھر کسی اور؟ 1271 01:05:56,460 --> 01:06:01,030 ہم اگلے سب سے چھوٹی ایک بار جب تعداد، ہم کیا کرتے ہیں؟ 1272 01:06:01,030 --> 01:06:03,010 مجھے کہنے جا رہا ہوں سب سے چھوٹی تعداد. 1273 01:06:03,010 --> 01:06:04,820 کہ ہم کیا کرنا چاہتے ہے. 1274 01:06:04,820 --> 01:06:06,210 >> تو سب سے چھوٹی تعداد کو تلاش. 1275 01:06:06,210 --> 01:06:08,061 اس کے بعد ہم کیا کرتے ہیں؟ 1276 01:06:08,061 --> 01:06:09,480 >> طالب علم: [اشراوی] شروع کرنے کے لئے. 1277 01:06:09,480 --> 01:06:10,680 >> JASON HIRSCHHORN: معاف کیجئے گا؟ 1278 01:06:10,680 --> 01:06:12,700 >> طالب علم: میں رکھ فہرست کے آغاز. 1279 01:06:12,700 --> 01:06:18,540 >> JASON HIRSCHHORN: تو میں رکھ فہرست کے آغاز. 1280 01:06:18,540 --> 01:06:20,140 اور ہم نے بات کیا کرتے ہیں کہ شروع میں تھا 1281 01:06:20,140 --> 01:06:20,830 فہرست میں، ٹھیک ہے؟ 1282 01:06:20,830 --> 01:06:21,910 ہم کچھ overwriting کی کر رہے ہیں. 1283 01:06:21,910 --> 01:06:23,130 تو جہاں ہم نے اس کے ڈال دیا ہے؟ 1284 01:06:23,130 --> 01:06:24,120 جی ہاں، انا؟ 1285 01:06:24,120 --> 01:06:25,520 >> طالب علم: کہاں سے چھوٹی تعداد تھی؟ 1286 01:06:25,520 --> 01:06:32,530 >> JASON HIRSHHORN: تو شروع میں ڈال دیا فہرست کے جہاں 1287 01:06:32,530 --> 01:06:35,180 سب سے چھوٹی تعداد تھی. 1288 01:06:35,180 --> 01:06:38,510 فہرست حکم سے باہر ہے تو جبکہ، تلاش سب سے چھوٹی تعداد میں، میں ڈال 1289 01:06:38,510 --> 01:06:40,630 فہرست کے آغاز، ڈال فہرست کے آغاز کہاں 1290 01:06:40,630 --> 01:06:42,900 سب سے چھوٹی تعداد تھی. 1291 01:06:42,900 --> 01:06:45,780 مارکس، آپ اس لائن rephrase کر سکتے ہیں فہرست کے حکم سے باہر ہے؟ 1292 01:06:45,780 --> 01:06:51,160 1293 01:06:51,160 --> 01:06:53,900 >> طالب علم: جبکہ تعداد کے مطابق نہیں کیا گیا ہے؟ 1294 01:06:53,900 --> 01:06:55,920 >> JASON HIRSHHORN: ٹھیک ہے، تو میں حکم کے لئے تعداد نہیں ہے جانتے ہیں کہ 1295 01:06:55,920 --> 01:06:58,670 کے مطابق، کیا ہم کرتے ہیں کی ضرورت ہے؟ 1296 01:06:58,670 --> 01:07:00,640 ہم کس طرح زیادہ سے زیادہ کی ضرورت ہے اس فہرست کے ذریعے جانا ہے؟ 1297 01:07:00,640 --> 01:07:09,650 >> طالب علم تو میں لوپ کے لئے ایک اندازہ، یا جبکہ، تعداد کی جانچ پڑتال کرتے ہوئے کم ہے 1298 01:07:09,650 --> 01:07:11,900 فہرست کی لمبائی سے؟ 1299 01:07:11,900 --> 01:07:13,160 >> JASON HIRSHHORN: ٹھیک ہے، یہ اچھی بات ہے. 1300 01:07:13,160 --> 01:07:15,000 میں misphrased لگتا ہے میرا سوال یہ غیر تسلی بخش. 1301 01:07:15,000 --> 01:07:15,990 میں صرف میں حاصل کرنے کے لئے کوشش کر رہا تھا ہم جانے کے لئے جا رہے ہیں 1302 01:07:15,990 --> 01:07:17,580 پوری فہرست کے ذریعے. 1303 01:07:17,580 --> 01:07:20,490 فہرست حکم سے باہر ہے تو جبکہ، میرے لئے، پر نقشہ کے لئے مشکل ہے. 1304 01:07:20,490 --> 01:07:24,940 لیکن بنیادی طور پر، کہ کس طرح میں نے اس کے بارے میں سوچنا. 1305 01:07:24,940 --> 01:07:28,880 تلاش، مکمل فہرست کے ذریعے جاؤ سب سے چھوٹی تعداد میں، میں ڈال 1306 01:07:28,880 --> 01:07:30,130 آغاز - اصل میں، تم صحیح ہو. 1307 01:07:30,130 --> 01:07:31,380 کی ان دونوں کو ڈال دو. 1308 01:07:31,380 --> 01:07:33,470 1309 01:07:33,470 --> 01:07:39,050 >> فہرست حکم سے باہر ہے تو، ہم مکمل فہرست کے ذریعے جانا کرنے کی ضرورت ہے 1310 01:07:39,050 --> 01:07:42,250 ایک بار، سب سے چھوٹی تعداد، کی جگہ تلاش اس فہرست کے آغاز میں، ڈال 1311 01:07:42,250 --> 01:07:45,430 فہرست کے آغاز کہاں سب سے چھوٹی تعداد میں تھا، اور اس کے بعد اگر 1312 01:07:45,430 --> 01:07:47,460 فہرست ہم نے، حکم سے باہر اب بھی ہے اس کے ذریعے جانا ہے 1313 01:07:47,460 --> 01:07:48,620 عمل پھر، ٹھیک ہے؟ 1314 01:07:48,620 --> 01:07:51,610 یہی وجہ ہے کہ انتخاب کی طرح، بگ O-رن ٹائم ہے انتخاب کی طرح، کوئی ہے؟ 1315 01:07:51,610 --> 01:07:52,830 >> طالب علم: مربع ن. 1316 01:07:52,830 --> 01:07:53,590 >> JASON HIRSHHORN: مربع ن. 1317 01:07:53,590 --> 01:07:57,040 مارکس اور میں صرف احساس کی طرح کیونکہ یہاں، ہم جا رہے ہیں 1318 01:07:57,040 --> 01:08:00,310 فہرست کے ذریعے جاؤ اوقات کی تعداد. 1319 01:08:00,310 --> 01:08:03,420 تو کچھ کے ذریعے جا لمبائی N (ن) کی تعداد 1320 01:08:03,420 --> 01:08:04,990 اصل میں مربع ن ہے. 1321 01:08:04,990 --> 01:08:08,100 >> تو یہ اپنے pseudocode ہے. 1322 01:08:08,100 --> 01:08:09,360 یہ بہت اچھا لگ رہا ہے. 1323 01:08:09,360 --> 01:08:11,870 کسی کو کوئی سوال ہے pseudocode کے بارے میں؟ 1324 01:08:11,870 --> 01:08:14,440 اصل میں انتخاب کی طرح چاہئے کیونکہ شاید میں سے ایک، کوڈ آئے 1325 01:08:14,440 --> 01:08:14,980 pseudocode. 1326 01:08:14,980 --> 01:08:17,569 کے بارے میں تو کوئی سوالات pseudocode کی منطق؟ 1327 01:08:17,569 --> 01:08:18,819 اب یہ براہ کرم دریافت کریں. 1328 01:08:18,819 --> 01:08:22,609 1329 01:08:22,609 --> 01:08:25,379 >> سلیکشن طرح - فہرست ہے جبکہ آرڈر کے، ہم اس کے ذریعے جانے کے لئے جا رہے ہیں 1330 01:08:25,379 --> 01:08:27,529 اور سب سے چھوٹی ہر وقت تلاش اور سامنے میں ڈال دیا. 1331 01:08:27,529 --> 01:08:33,470 فہرست، کر سکتے ہیں کے لئے سے باہر ہے تو جبکہ کسی نے مجھ کوڈ کی اس لائن دینے والے 1332 01:08:33,470 --> 01:08:39,689 مجھے ایک لائن نہیں دی ہے براہ مہربانی، ابھی تک کوڈ کے؟ 1333 01:08:39,689 --> 01:08:40,939 یہ کس طرح لگتا ہے؟ 1334 01:08:40,939 --> 01:08:43,669 1335 01:08:43,669 --> 01:08:44,649 >> طالب علم: یہ لوپ کے لئے ایک ہے. 1336 01:08:44,649 --> 01:08:45,830 >> JASON HIRSHHORN: یہ لگتا ہے لوپ کے لئے ایک طرح. 1337 01:08:45,830 --> 01:08:47,653 ٹھیک ہے، تم نے مجھے لوپ کے لئے دے سکتے ہیں؟ 1338 01:08:47,653 --> 01:08:48,925 کے لئے - 1339 01:08:48,925 --> 01:08:50,219 >> طالب علم: میں 0 برابر. 1340 01:08:50,219 --> 01:08:52,705 >> JASON HIRSHHORN: میں یا - 1341 01:08:52,705 --> 01:08:55,111 ہم کیا یاد کر رہے ہیں؟ 1342 01:08:55,111 --> 01:08:56,819 کیا یہاں جاتا ہے؟ 1343 01:08:56,819 --> 01:08:57,550 >> طالب علم: INT. 1344 01:08:57,550 --> 01:08:59,270 >> JASON HIRSHHORN: بالکل. 1345 01:08:59,270 --> 01:09:02,590 - (میں 0 = int میں 1346 01:09:02,590 --> 01:09:07,843 >> طالب علم: میں ن <؛ میں + +). 1347 01:09:07,843 --> 01:09:09,319 >> JASON HIRSHHORN: جیف، یہ nailed. 1348 01:09:09,319 --> 01:09:10,660 ہم، فہرست کے ذریعے جا رہے ہیں؟ 1349 01:09:10,660 --> 01:09:11,880 ہم سے پہلے اس کوڈ دیکھا ہے. 1350 01:09:11,880 --> 01:09:12,850 کامل. 1351 01:09:12,850 --> 01:09:14,790 تو ہمارے یہاں گھوبگھرالی منحنی خطوط وحدانی ڈال دو. 1352 01:09:14,790 --> 01:09:17,859 میں کچھ ڈال کے لئے جا رہا ہوں یہاں گھوبگھرالی منحنی خطوط وحدانی. 1353 01:09:17,859 --> 01:09:21,660 >> یہ 0 ہے جبکہ تو، ہم جانے کی ضرورت ہے مکمل فہرست کے ذریعے. 1354 01:09:21,660 --> 01:09:26,612 تو ہر وقت ہم نے فہرست کے ذریعے جاؤ کیا ہم ٹریک رکھنے کے لئے چاہتے ہیں؟ 1355 01:09:26,612 --> 01:09:28,260 >> طالب علم: کوئی سویپ بنا رہے ہیں. 1356 01:09:28,260 --> 01:09:29,069 >> JASON HIRSHHORN: تلاش سب سے چھوٹی تعداد. 1357 01:09:29,069 --> 01:09:31,479 تو ہم شاید ٹریک کے رکھنا چاہئے سب سے چھوٹی تعداد میں ہر وقت. 1358 01:09:31,479 --> 01:09:34,590 تو لائن میں ٹریک رکھنے کے لئے کر سکتے ہیں سب سے چھوٹی تعداد کی؟ 1359 01:09:34,590 --> 01:09:37,720 Aleha، میں کس طرح رکھ سکتے ہیں کچھ کے ٹریک؟ 1360 01:09:37,720 --> 01:09:38,460 >> طالب علم: ایک نیا متغیر شروع. 1361 01:09:38,460 --> 01:09:39,390 >> JASON HIRSHHORN: ایک نیا متغیر شروع. 1362 01:09:39,390 --> 01:09:40,069 تو ایک متغیر تشکیل دیں. 1363 01:09:40,069 --> 01:09:41,830 کس قسم کی؟ 1364 01:09:41,830 --> 01:09:42,930 >> طالب علم: INT. 1365 01:09:42,930 --> 01:09:43,710 >> JASON HIRSHHORN: INT. 1366 01:09:43,710 --> 01:09:44,939 کی سب سے چھوٹی کہتے ہیں. 1367 01:09:44,939 --> 01:09:47,600 اور کیا اس کے برابر جب کرتا ہے ہم صرف باہر شروع کر رہے ہیں؟ 1368 01:09:47,600 --> 01:09:48,910 ہم ابھی تک فہرست کے ذریعے نہیں گئے. 1369 01:09:48,910 --> 01:09:50,540 ہم کے پہلے حصہ میں ہیں کے ذریعے ہماری پہلی بار کی فہرست. 1370 01:09:50,540 --> 01:09:51,930 برابر کرتا ہے، سب سے چھوٹا نمبر؟ 1371 01:09:51,930 --> 01:09:54,140 >> طالب علم: اقدار میں. 1372 01:09:54,140 --> 01:09:54,900 >> JASON HIRSHHORN: اقدار میں. 1373 01:09:54,900 --> 01:09:56,980 یہ ٹھیک ہے، بالکل ٹھیک لگتا ہے؟ 1374 01:09:56,980 --> 01:09:59,590 شروع میں سب سے چھوٹی تعداد ہم کہاں ہیں ہے. 1375 01:09:59,590 --> 01:10:01,960 تو اب ہم ہمارے سب سے چھوٹی ہے، اور ہم نے کی ضرورت مکمل فہرست کے ذریعے جاؤ اور پر 1376 01:10:01,960 --> 01:10:05,080 سب سے چھوٹا اس کا موازنہ سب کچھ کرنے کے لئے. 1377 01:10:05,080 --> 01:10:08,150 تو ہم پھر سے فہرست کے ذریعے جانا ہے؟ 1378 01:10:08,150 --> 01:10:08,630 مائیکل؟ 1379 01:10:08,630 --> 01:10:10,000 >> طالب علم: آپ کو کرنے کی ضرورت ہے لوپ کے لئے ایک. 1380 01:10:10,000 --> 01:10:10,383 >> JASON HIRSHHORN: لوپ کے لئے ایک اور. 1381 01:10:10,383 --> 01:10:11,276 چلو اسے کرتے ہیں. 1382 01:10:11,276 --> 01:10:12,540 مجھے کچھ کوڈ دے. 1383 01:10:12,540 --> 01:10:13,790 >> طالب علم: لوپ کے لئے - 1384 01:10:13,790 --> 01:10:16,750 1385 01:10:16,750 --> 01:10:19,470 سب سے چھوٹی کے لئے - 1386 01:10:19,470 --> 01:10:23,040 1387 01:10:23,040 --> 01:10:25,770 صرف J int میں، آپ کہہ سکتے ہیں؟ 1388 01:10:25,770 --> 01:10:31,150 = 0؛ اس طرح ہے - 1389 01:10:31,150 --> 01:10:34,014 1390 01:10:34,014 --> 01:10:35,710 >> JASON HIRSHHORN: ٹھیک ہے، ہم چاہتے ہیں مکمل فہرست کے ذریعے جانا - 1391 01:10:35,710 --> 01:10:37,847 >> طالب علم: J 01:10:42,140 1393 01:10:42,140 --> 01:10:42,405 >> JASON HIRSHHORN: تصوراتی، بہترین. 1394 01:10:42,405 --> 01:10:46,100 ہم کے ذریعے جا رہے ہیں لوپ کے لئے ایک بار پھر. 1395 01:10:46,100 --> 01:10:51,380 اور ہم کس طرح حاصل کر سکتا ہوں سب سے چھوٹا نمبر؟ 1396 01:10:51,380 --> 01:10:52,630 ٹام؟ 1397 01:10:52,630 --> 01:10:54,570 1398 01:10:54,570 --> 01:11:00,520 ہم موجودہ سب سے چھوٹی تعداد ہے، تو ہم کس طرح نیا سب سے چھوٹی تلاش کروں؟ 1399 01:11:00,520 --> 01:11:07,200 >> طالب علم: ہم چیک کر سکتے ہیں تو سب سے چھوٹی ہم تعداد سے زیادہ ہے 1400 01:11:07,200 --> 01:11:09,040 بریکٹ J اہمیت دیتا ہے. 1401 01:11:09,040 --> 01:11:14,740 >> JASON HIRSHHORN: تو سب سے چھوٹی ہے اقدار بریکٹ J سے زیادہ. 1402 01:11:14,740 --> 01:11:19,350 تو اگر ہماری موجودہ سب سے چھوٹی سے زیادہ ہے - 1403 01:11:19,350 --> 01:11:21,770 میں ان دو لائنوں منتقل کرنے کے لئے جا رہا ہوں ایک دوسرے کے لئے وہاں کوڈ کی. 1404 01:11:21,770 --> 01:11:26,010 کیونکہ ہم کسی بھی گماگمن سے پہلے، ہم مکمل فہرست کے ذریعے جانا کرنے کی ضرورت ہے. 1405 01:11:26,010 --> 01:11:28,880 تو اس pseudocode اصل میں ہونا چاہئے لوپ کے لئے کہ اندرونی باہر ہو. 1406 01:11:28,880 --> 01:11:30,390 تو مکمل فہرست کے ذریعے جانا. 1407 01:11:30,390 --> 01:11:34,520 سب سے چھوٹی سے بڑا ہے اقدار J پھر کیا ہوا؟ 1408 01:11:34,520 --> 01:11:37,830 >> طالب علم: اس وقت سب سے چھوٹی اقدار J برابر. 1409 01:11:37,830 --> 01:11:41,190 1410 01:11:41,190 --> 01:11:42,600 >> JASON HIRSHHORN: تصوراتی، بہترین. 1411 01:11:42,600 --> 01:11:44,580 ایک فوری سوال - 1412 01:11:44,580 --> 01:11:47,236 ہم اس لوپ کے ذریعے جانا پہلی بار، میں 0 کے برابر کرنے جا رہا ہے، جے ہو رہا ہے 1413 01:11:47,236 --> 01:11:50,710 ہم یہاں ایک بار 0 کے برابر. 1414 01:11:50,710 --> 01:11:52,410 تو ہم کا موازنہ کرنے جا رہے ہیں خود کو ایک بڑی تعداد. 1415 01:11:52,410 --> 01:11:53,660 کہ موثر ہے؟ 1416 01:11:53,660 --> 01:11:57,260 1417 01:11:57,260 --> 01:11:58,390 نہیں، یہ واقعی موثر نہیں ہے. 1418 01:11:58,390 --> 01:12:02,915 تو ہمارے J جانے کی ضرورت ہے 0 سے ہر وقت ن؟ 1419 01:12:02,915 --> 01:12:06,310 ہم نے ہمیشہ کی جانچ پڑتال کرنے کی ضرورت ہے مکمل فہرست کے ذریعے؟ 1420 01:12:06,310 --> 01:12:06,520 [اشراوی]؟ 1421 01:12:06,520 --> 01:12:07,564 >> طالب علم: اس کی بجائے میں کے ساتھ شروع کریں. 1422 01:12:07,564 --> 01:12:09,405 >> JASON HIRSHHORN: J کر سکتے ہیں کیا کے ساتھ شروع؟ 1423 01:12:09,405 --> 01:12:09,990 >> طالب علم: میں. 1424 01:12:09,990 --> 01:12:13,040 >> JASON HIRSHHORN: J میں کے ساتھ شروع کر سکتے ہیں. 1425 01:12:13,040 --> 01:12:18,840 تو اب ہم شروع کرنے کا آپس میں موازنہ ہم پر ہیں ایک کے ساتھ. 1426 01:12:18,840 --> 01:12:21,020 لیکن پھر بھی، اس کے طور پر ہے ممکن طور پر موثر؟ 1427 01:12:21,020 --> 01:12:22,320 >> طالب علم: میں 1 +. 1428 01:12:22,320 --> 01:12:25,420 >> JASON HIRSHHORN: میں 1 + لگتا ہے سب سے زیادہ موثر، کیونکہ ہم 1429 01:12:25,420 --> 01:12:26,120 پہلے ہی میں ہے. 1430 01:12:26,120 --> 01:12:28,100 ہم کے طور پر بیان کر رہے ہیں 15 لائن میں سب سے چھوٹی. 1431 01:12:28,100 --> 01:12:29,350 ہم کے ساتھ شروع کرنے کے لئے جا رہے ہیں اگلے ایک خود کار طریقے سے. 1432 01:12:29,350 --> 01:12:34,470 1433 01:12:34,470 --> 01:12:38,540 تو ہم لوپ کے لئے کے ذریعے جانا. 1434 01:12:38,540 --> 01:12:39,620 ہم ہر وقت کے ذریعے جائیں گے. 1435 01:12:39,620 --> 01:12:40,860 ہم نے وقت کی ایک بڑی تعداد کے ذریعے جائیں گے. 1436 01:12:40,860 --> 01:12:42,860 اب ہم کے ذریعے ملا ہے لوپ کے لئے اس کے اندرونی. 1437 01:12:42,860 --> 01:12:44,350 ہم سب سے چھوٹی قیمت بچاتا ہے. 1438 01:12:44,350 --> 01:12:46,045 ہم میں اس کی جگہ کرنے کی ضرورت ہے فہرست کے آغاز. 1439 01:12:46,045 --> 01:12:48,390 تو کس طرح میں اس کی جگہ ہے فہرست کے آغاز؟ 1440 01:12:48,390 --> 01:12:51,290 1441 01:12:51,290 --> 01:12:55,926 مراد متغیر کیا ہے فہرست کے آغاز کے لئے ہے؟ 1442 01:12:55,926 --> 01:13:00,500 ہم، لوپ کے لئے اس سے باہر میں ہیں تو کیا مراد ہے 1443 01:13:00,500 --> 01:13:01,280 فہرست کے آغاز؟ 1444 01:13:01,280 --> 01:13:02,880 >> طالب علم: اقدار میں. 1445 01:13:02,880 --> 01:13:03,510 >> JASON HIRSHHORN: بالکل صحیح. 1446 01:13:03,510 --> 01:13:04,650 اقدار میں کے آغاز ہے - 1447 01:13:04,650 --> 01:13:06,320 یا معذرت، آغاز نہیں. 1448 01:13:06,320 --> 01:13:07,090 یہ الجھا تھا. 1449 01:13:07,090 --> 01:13:11,620 ہم کے آغاز میں ہیں جہاں یہ ہے فہرست کے ناچھانٹا ہوا حصہ. 1450 01:13:11,620 --> 01:13:12,800 تو میں اقدار. 1451 01:13:12,800 --> 01:13:14,050 اور کیا برابر ہے کہ ہے؟ 1452 01:13:14,050 --> 01:13:15,925 1453 01:13:15,925 --> 01:13:17,326 >> طالب علم: سب سے چھوٹا. 1454 01:13:17,326 --> 01:13:18,862 >> JASON HIRSHHORN: اقدار میں کیا برابر ہے؟ 1455 01:13:18,862 --> 01:13:19,310 >> طالب علم: سب سے چھوٹا. 1456 01:13:19,310 --> 01:13:20,030 >> JASON HIRSHHORN: سب سے چھوٹا. 1457 01:13:20,030 --> 01:13:20,980 بالکل صحیح. 1458 01:13:20,980 --> 01:13:23,510 تو ہم شروع میں رکھ رہے ہیں فہرست کے، اور اب ہم ڈال کرنے کی ضرورت 1459 01:13:23,510 --> 01:13:25,710 فہرست کے آغاز کہاں سب سے چھوٹی تعداد تھی. 1460 01:13:25,710 --> 01:13:29,700 تو میں کس طرح لکھ سکتا ہوں جہاں سب سے چھوٹی تعداد تھی؟ 1461 01:13:29,700 --> 01:13:31,670 کیا کی اقدار؟ 1462 01:13:31,670 --> 01:13:33,170 >> طالب علم: 0. 1463 01:13:33,170 --> 01:13:34,090 >> JASON HIRSHHORN: چھوٹے 0 نمبر پر ہے؟ 1464 01:13:34,090 --> 01:13:35,340 >> طالب علم: جی ہاں. 1465 01:13:35,340 --> 01:13:38,680 1466 01:13:38,680 --> 01:13:39,910 >> JASON HIRSHHORN: کیا تو سب سے چھوٹی تعداد کے آخر میں تھا 1467 01:13:39,910 --> 01:13:40,860 اس ناچھانٹا ہوا فہرست؟ 1468 01:13:40,860 --> 01:13:42,460 >> طالب علم: معذرت، سوال کیا تھا؟ 1469 01:13:42,460 --> 01:13:44,020 >> JASON HIRSHHORN: کہاں ہے سب سے چھوٹا نمبر؟ 1470 01:13:44,020 --> 01:13:46,940 ہم سب سے چھوٹی لیا اور میں ڈال دیا یہیں اس لائن کے ساتھ، شروع. 1471 01:13:46,940 --> 01:13:48,987 >> طالب علم: یہ ہونا چاہئے کچھ میں ذخیرہ کیا گیا ہے - 1472 01:13:48,987 --> 01:13:50,510 >> طالب علم: اقدار J. 1473 01:13:50,510 --> 01:13:51,520 >> JASON HIRSHHORN: ٹھیک ہے، یہ ہے ضروری نہیں J اہمیت دیتا ہے. 1474 01:13:51,520 --> 01:13:54,100 یہ بھی اس وقت موجود نہیں ہے. 1475 01:13:54,100 --> 01:13:55,960 >> طالب علم: آپ کا اعلان کرنا ہوگا ایک متغیر پہلے اور 1476 01:13:55,960 --> 01:13:58,230 پھر تفویض - 1477 01:13:58,230 --> 01:14:01,150 آپ سب سے چھوٹی تعداد کو تلاش کرتے ہیں، کہ تعداد کے انڈیکس تفویض 1478 01:14:01,150 --> 01:14:02,480 کچھ متغیر یا اس طرح کچھ. 1479 01:14:02,480 --> 01:14:04,790 >> JASON HIRSHHORN: تو کر سکتے ہیں تم نے پھر سے کہنا ہے کہ؟ 1480 01:14:04,790 --> 01:14:08,390 >> طالب علم: تو آپ int کا اعلان کر دیا جہاں سب سے چھوٹی، تم نے بھی INT کا اعلان کرنا چاہئے 1481 01:14:08,390 --> 01:14:10,750 سب سے چھوٹی انڈیکس = میں، یا اس طرح کچھ. 1482 01:14:10,750 --> 01:14:13,280 >> JASON HIRSHHORN: تو میں نے int جہاں سب سے چھوٹی، میں ٹریک رکھنا چاہئے نہ صرف 1483 01:14:13,280 --> 01:14:16,150 قیمت ہے لیکن جگہ. 1484 01:14:16,150 --> 01:14:20,850 INT smallest_location = یہ میں کیس، ہم صرف میں کروں گا. 1485 01:14:20,850 --> 01:14:22,390 ہم وہ کہاں ہے جاننے کی ضرورت ہے. 1486 01:14:22,390 --> 01:14:26,820 ہم کوڈ کے آخر میں ہے، اور ہم ہم اسے کہاں تھا کوئی اندازہ نہیں تھا احساس ہوا. 1487 01:14:26,820 --> 01:14:29,810 اور اس طرح ایک بار پھر، ہم تعریفیں ہیں اس میں سے ایک ایک پر. 1488 01:14:29,810 --> 01:14:32,890 آپ کی اپنی مرضی پر اس کوڈنگ تم لوگ شاید ایک ہی مسئلہ حاصل کرنے کے لئے. 1489 01:14:32,890 --> 01:14:34,130 میں کس طرح کیا heck اسے تلاش ہے؟ 1490 01:14:34,130 --> 01:14:36,720 اور پھر آپ میں، انتظار، احساس اس کا ٹریک رکھنے کے لئے کی ضرورت ہے. 1491 01:14:36,720 --> 01:14:38,500 >> تو سب سے چھوٹا بڑا ہے تو اقدار J سے. 1492 01:14:38,500 --> 01:14:39,740 ہم سب سے چھوٹی اقدار J برابر مقرر کیا. 1493 01:14:39,740 --> 01:14:42,090 ہم کو تبدیل کرنا اور کیا ضرورت ہے؟ 1494 01:14:42,090 --> 01:14:43,710 Constantin، اور کیا کرتے ہیں ہم کو تبدیل کی ضرورت ہے؟ 1495 01:14:43,710 --> 01:14:44,560 >> طالب علم: مقام. 1496 01:14:44,560 --> 01:14:45,270 >> JASON HIRSHHORN: بالکل. 1497 01:14:45,270 --> 01:14:46,925 تو مجھے کوڈ میں اس لائن دے. 1498 01:14:46,925 --> 01:14:53,310 >> طالب علم: smallest_location = J. 1499 01:14:53,310 --> 01:14:54,790 >> JASON HIRSHHORN: بالکل. 1500 01:14:54,790 --> 01:14:58,210 اور پھر آخر میں نیچے، ہم چاہتے ہیں فہرست کے آغاز میں ڈال دیا جہاں 1501 01:14:58,210 --> 01:15:00,790 سب سے چھوٹی تعداد میں، کس طرح تھا ہم جہاں سے رجوع کرتے ہیں 1502 01:15:00,790 --> 01:15:02,200 سب سے چھوٹی تعداد تھی؟ 1503 01:15:02,200 --> 01:15:03,580 مارکس؟ 1504 01:15:03,580 --> 01:15:08,530 >> طالب علم: سب سے چھوٹی تعداد سب سے چھوٹی جگہ پر واقع ہے. 1505 01:15:08,530 --> 01:15:12,230 >> JASON HIRSHHORN: تو اقدار میں smallest_location. 1506 01:15:12,230 --> 01:15:14,700 اور ہم کیا ڈال دیا ہے؟ 1507 01:15:14,700 --> 01:15:17,600 کے آغاز فہرست، وہ کیا ہے؟ 1508 01:15:17,600 --> 01:15:19,710 >> طالب علم: ٹھیک ہے، ہم واقعی نہیں جانتے ہم overwrote اب کیونکہ. 1509 01:15:19,710 --> 01:15:23,250 تو یہ ایک تبدیل مقامات ہے ان دو لائنوں کی؟ 1510 01:15:23,250 --> 01:15:26,110 آپ کے ارد گرد ان دو لائنوں سوئچ. 1511 01:15:26,110 --> 01:15:30,740 >> JASON HIRSHHORN: ٹھیک ہے، تو ہم کرتے ہیں اب، کیونکہ ہم لائن ری سیٹ ہے 1512 01:15:30,740 --> 01:15:31,960 اقدار میں سب سے چھوٹی سے پہلے. 1513 01:15:31,960 --> 01:15:33,810 تو ہم نے اس ابتدائی قیمت کھو. 1514 01:15:33,810 --> 01:15:37,350 تو آپ کو تبدیل ھو نے والے یہ دو لائنوں نے کہا. 1515 01:15:37,350 --> 01:15:41,780 تو اب فہرست کے آغاز میں ڈال دیا جہاں سب سے چھوٹی تعداد تھی. 1516 01:15:41,780 --> 01:15:47,060 تو smallest_location میں اقدار کے برابر ہے. 1517 01:15:47,060 --> 01:15:51,310 کہ اس کے آغاز کے آگے بڑھ رہا ہے فہرست کے ناچھانٹا ہوا حصہ 1518 01:15:51,310 --> 01:15:52,090 سب سے چھوٹی مقام. 1519 01:15:52,090 --> 01:15:54,860 اور پھر اقدار میں میں ہم جا رہے ہیں کہ سب سے چھوٹی تعداد. 1520 01:15:54,860 --> 01:15:57,450 >> کیا اس کا کوئی مطلب ہم کیوں کہ تبدیل کرنے کے لئے تھا؟ 1521 01:15:57,450 --> 01:15:59,650 ہم اس قدر ادلیکھت ہو جائے گا - آپ کو شاید پڑے گا ایک اور بات 1522 01:15:59,650 --> 01:16:02,740 سوچا اور جی ڈی پی میں پایا. 1523 01:16:02,740 --> 01:16:05,310 تو ہم کی دیکھ بھال کر لیا ہے تمام pseudocode. 1524 01:16:05,310 --> 01:16:10,935 کچھ اور ہے ہم نے یہاں لکھنے کے لئے کی ضرورت ہے؟ 1525 01:16:10,935 --> 01:16:14,911 کوئی کچھ کے بارے میں سوچ سکتے ہیں؟ 1526 01:16:14,911 --> 01:16:16,180 >> طالب علم: آپ کو کیسے پتہ آپ کیا کر رہے ہو؟ 1527 01:16:16,180 --> 01:16:17,680 >> JASON HIRSHHORN: کس طرح ہم کرتے ہیں ہم کیا کر رہے ہیں جب پتہ ہے؟ 1528 01:16:17,680 --> 01:16:18,890 بڑا سوال. 1529 01:16:18,890 --> 01:16:21,684 تو ہم کس طرح ہم نے کیا کر رہے ہیں جب جانتے ہیں. 1530 01:16:21,684 --> 01:16:24,720 >> طالب علم: COUNT رکھنے کے لئے ایک متغیر بنائیں وہاں نہیں بنایا ایک سویپ ہے یا اگر 1531 01:16:24,720 --> 01:16:27,810 اور ایک پاس کے ذریعے جانا. 1532 01:16:27,810 --> 01:16:30,180 >> JASON HIRSHHORN: ٹھیک ہے. 1533 01:16:30,180 --> 01:16:31,800 کہ بلبلا طرح میں کام کریں گے. 1534 01:16:31,800 --> 01:16:35,210 لیکن انتخاب کی طرح کے لئے، ہم نہیں کرتے ہیں تو ایک سویپ بنانے کے، کہ صرف ہو سکتا ہے 1535 01:16:35,210 --> 01:16:38,670 سب سے چھوٹی قیمت ہے کیونکہ اس میں اس کی صحیح جگہ. 1536 01:16:38,670 --> 01:16:41,240 ہم نے ایک فہرست 1، 2، 4، 3 ہو سکتا ہے. 1537 01:16:41,240 --> 01:16:42,830 ہم کے ذریعے دوسری بار کسی بھی سویپ نہیں کرے گا. 1538 01:16:42,830 --> 01:16:47,260 ہم تعداد 2 ہو جائے گا، لیکن ہم کریں گے اب بھی جا رکھنے کے لئے کی ضرورت ہے. 1539 01:16:47,260 --> 01:16:49,390 تو ہم جب ٹریک رکھنے کے لئے کی ضرورت ہے ہم کیا کر رہے ہیں، یا ہم صرف جانا چاہتے ہو 1540 01:16:49,390 --> 01:16:50,640 یہ ختم ہو گیا ہے جب تک؟ 1541 01:16:50,640 --> 01:16:54,098 1542 01:16:54,098 --> 01:16:56,740 >> طالب علم: ہم صرف جا سکتے ہیں یہ ختم ہو گیا ہے جب تک. 1543 01:16:56,740 --> 01:16:58,090 >> JASON HIRSHHORN: ہم کر سکتے ہیں یہ ختم ہو گیا ہے جب تک جانا. 1544 01:16:58,090 --> 01:17:01,720 بلبلا طرح میں، آپ، بالکل صحیح ہو آپ کے حل کے ساتھ جیف اور Aleha، - 1545 01:17:01,720 --> 01:17:04,990 اس کا ٹریک رکھنے کے لئے بہت اچھا ہے کس طرح بہت سے سویپ آپ، بنا دیا ہے کیونکہ بلبلا میں 1546 01:17:04,990 --> 01:17:07,920 آپ اصل میں کرتے ہیں تو طرح،، کوئی سویپ بنا آپ کیا کر رہے ہیں اور آپ کو شاید آپ کی کاٹ کر سکتے ہیں 1547 01:17:07,920 --> 01:17:09,000 مسئلہ تھوڑا نیچے. 1548 01:17:09,000 --> 01:17:11,440 لیکن انتخاب کی طرح کے لئے، آپ واقعی ہے کے اختتام پر کے ذریعے جانا ہے 1549 01:17:11,440 --> 01:17:14,940 کے ارد گرد ہر وقت کی فہرست. 1550 01:17:14,940 --> 01:17:16,200 >> تو یہ ہے. 1551 01:17:16,200 --> 01:17:18,530 ہم چھوڑ دو منٹ ہیں. 1552 01:17:18,530 --> 01:17:21,560 سب بنا دو. 1553 01:17:21,560 --> 01:17:24,340 مجھے صرف کھولیں یہاں تلاش کریں اور بنا دو اس بات کا یقین مجھے حقیقت میں بلا رہا ہوں - 1554 01:17:24,340 --> 01:17:25,610 میں بلبلا طرح بلا نہیں کر رہا ہوں. 1555 01:17:25,610 --> 01:17:29,230 کی انتخاب کی طرح کرنے کے لئے تبدیل. 1556 01:17:29,230 --> 01:17:31,060 سب کو. / تلاش. 1557 01:17:31,060 --> 01:17:32,360 42 تلاش کرتے ہیں. 1558 01:17:32,360 --> 01:17:38,110 ہم ایک منتقل کرنے کے لئے جا رہے ہیں اس وقت ناچھانٹا ہوا کی فہرست، اسے حل کرنا چاہئے کیونکہ 1559 01:17:38,110 --> 01:17:43,790 سب سے پہلے، تلاش کے کوڈ کے مطابق - ترتیب دیں چاہیے سب سے پہلے تو ہماری طرح کی تقریب کا استعمال کرتے ہوئے اور 1560 01:17:43,790 --> 01:17:44,995 کچھ کے لئے تلاش کریں. 1561 01:17:44,995 --> 01:17:46,245 انگلیوں کے سب سے تجاوز کر دی. 1562 01:17:46,245 --> 01:17:48,530 1563 01:17:48,530 --> 01:17:49,370 >> ہے بھگوان. 1564 01:17:49,370 --> 01:17:50,800 واہ، میرا دل دھڑک رہا تھا. 1565 01:17:50,800 --> 01:17:52,320 تو یہ درست ہے. 1566 01:17:52,320 --> 01:17:57,270 اصل میں، ہم اس سے زیادہ بھاگ گیا تو جہاں تک میں کر سکتا ہوں کے طور پر بڑے پیمانے پر، کوڈ، 1567 01:17:57,270 --> 01:17:59,280 بتا، بالکل صحیح ہے. 1568 01:17:59,280 --> 01:18:02,150 کچھ تجاویز ہیں میں آپ کے لئے ہو گا. 1569 01:18:02,150 --> 01:18:06,215 مثال کے طور پر، 15 اور 16 لگتا ہے ایک چھوٹا سا بے کار. 1570 01:18:06,215 --> 01:18:09,450 آپ کو ضروری نہیں ایسا لگتا ہے ان دونوں کو بچانے کے لئے کی ضرورت ہے. 1571 01:18:09,450 --> 01:18:12,790 آپ سب سے چھوٹی مقام، اگر آپ کے پاس آسانی کی طرف سے سب سے چھوٹی قیمت حاصل کر سکتے ہیں 1572 01:18:12,790 --> 01:18:14,750 بس میں کی اقدار ٹائپ. 1573 01:18:14,750 --> 01:18:18,100 >> ، میں نے آپ کے کوڈ کو گریڈنگ کیا جائے تو میں اصل میں، میں کروں گا ہو جائے گا جس 1574 01:18:18,100 --> 01:18:21,160 اگر آپ کو شاید ایک نقطہ لے ، ان میں سے دونوں شامل ہیں آپ کی وجہ سے 1575 01:18:21,160 --> 01:18:22,670 ان میں سے دونوں کی ضرورت نہیں ہے. 1576 01:18:22,670 --> 01:18:25,400 آپ کی جگہ ہے، تو آپ کر سکتے ہیں بہت آسانی سے قیمت حاصل. 1577 01:18:25,400 --> 01:18:27,520 اور یہ ایک چھوٹا سا عجیب لگتا ہے ان دونوں کے ذخیرہ کرنے کے لئے. 1578 01:18:27,520 --> 01:18:31,070 شاید ایک نقطہ لے، لیکن نہیں یقینی طور پر ہے کہ شاید یہ ہے کہ تبصرہ 1579 01:18:31,070 --> 01:18:32,670 ایک ساہتیک سٹائل کا انتخاب آپ کرنے کی ضرورت ہے. 1580 01:18:32,670 --> 01:18:35,290 کورس کے، کوڈ بھی بالکل اچھی طرح سے چلتا ہے. 1581 01:18:35,290 --> 01:18:36,860 >> تو بدقسمتی سے ہم نہیں بلبلا طرح حاصل کرنے کے لئے. 1582 01:18:36,860 --> 01:18:37,940 میں نے اس کے بارے میں معافی چاہتا ہوں. 1583 01:18:37,940 --> 01:18:39,135 ہم ختم انتخاب کی طرح کیا. 1584 01:18:39,135 --> 01:18:41,450 کسی کو کسی بھی حتمی سوال ہے انتخاب کی طرح کے بارے میں؟ 1585 01:18:41,450 --> 01:18:44,320 1586 01:18:44,320 --> 01:18:47,690 >> ہم باہر کی سربراہی سے پہلے ٹھیک ہے،، میں آپ چاہتے ہیں آپ کے کروم براؤزر کو کھولنے کے لئے. 1587 01:18:47,690 --> 01:18:54,340 معذرت، کہ صرف ایک صریح پلگ ان تھا انٹرنیٹ براؤزر کی ایک قسم کے لئے. 1588 01:18:54,340 --> 01:18:57,770 آپ کے براؤزر کی کسی بھی قسم کو کھول سکتے ہیں، لیکن یہ شاید کروم ہو جائے گا. 1589 01:18:57,770 --> 01:19:01,250 اور یہ مندرجہ ذیل ویب سائٹ پر جانے کے - 1590 01:19:01,250 --> 01:19:06,410 sayat.me/cs50. 1591 01:19:06,410 --> 01:19:07,685 آپ کے کمپیوٹر میں ٹائپ نہیں کر رہے ہیں اب، آپ کو واضح طور ہو 1592 01:19:07,685 --> 01:19:10,210 ، ٹام نہیں کر. 1593 01:19:10,210 --> 01:19:12,870 >> اور صحیح یا تو برائے مہربانی کرو اب یا اگلے گھنٹے میں - 1594 01:19:12,870 --> 01:19:14,260 مجھے کچھ رائے دے. 1595 01:19:14,260 --> 01:19:15,660 یہ سیکشن دو ہے. 1596 01:19:15,660 --> 01:19:18,060 ہم ایک دوسرے کے ساتھ بہت زیادہ ہے، تو میں کو بہتر بنانے کے کرنے کے لئے کمرے کی ایک بہت ہے. 1597 01:19:18,060 --> 01:19:19,620 مجھے امید ہے کہ یہ بھی اچھی طرح کچھ چیزیں کیا. 1598 01:19:19,620 --> 01:19:22,160 تو تم مجھے بالکل برا ہے، لیکن کر سکتے ہیں تم نے بھی مجھے ایک حرکت دینا چاہتے ہیں 1599 01:19:22,160 --> 01:19:24,250 چہرے، میں نے اس کی تعریف کریں گے. 1600 01:19:24,250 --> 01:19:25,330 اندر کہ بھریں 1601 01:19:25,330 --> 01:19:28,210 >> اور بائیں ایک منٹ کے ساتھ، اس ہفتے تین تھا. 1602 01:19:28,210 --> 01:19:30,750 میں تھوڑی دیر کے لئے باہر کھڑے ہوں گے اگر آپ کو کوئی سوال ہے تو. 1603 01:19:30,750 --> 01:19:32,220 میں تم لوگوں کو دیکھیں گے کل لیکچر. 1604 01:19:32,220 --> 01:19:34,742