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