1 00:00:00,000 --> 00:00:05,259 2 00:00:05,259 --> 00:00:08,300 ڈوگ لایڈ تو CS50 میں، ہم احاطہ کرتا ہے مختلف اعداد و شمار کے ڈھانچے کی ایک بہت، 3 00:00:08,300 --> 00:00:09,180 ٹھیک ہے؟ 4 00:00:09,180 --> 00:00:11,420 ہم arrays دیکھا، اور سے منسلک ہے فہرستوں، اور ہیش میزیں، 5 00:00:11,420 --> 00:00:15,210 اور کوشش کرتا ہے، پوٹ اور قطار. 6 00:00:15,210 --> 00:00:17,579 ہم نے بھی ایک چھوٹا سا پتہ چل جائے گا درختوں اور ڈھیر کے بارے میں، 7 00:00:17,579 --> 00:00:20,120 لیکن واقعی یہ سب صرف ختم ایک موضوع پر مختلف حالتوں ہونے. 8 00:00:20,120 --> 00:00:22,840 واقعی موجود ہیں ان چار بنیادی تصورات کی قسم 9 00:00:22,840 --> 00:00:25,190 اور ہے کہ سب کچھ کرنے کے لئے نیچے ابلنا کر سکتے ہیں. 10 00:00:25,190 --> 00:00:28,150 لڑیاں، منسلک کی فہرست، ہیش میزیں، اور کوشش کرتا ہے. 11 00:00:28,150 --> 00:00:30,720 اور جیسے میں نے کہا، وہاں ان پر مختلف حالتوں ہیں، 12 00:00:30,720 --> 00:00:32,720 لیکن یہ خوبصورت ہے بہت مختصر کرنے کے لئے جا رہا 13 00:00:32,720 --> 00:00:38,140 سب کچھ ہم بات کرنے کے لئے جا رہے ہیں سی کے لحاظ سے اس کی کلاس میں کے بارے میں 14 00:00:38,140 --> 00:00:40,140 >> لیکن کس طرح ان کا حق، تمام پیمانہ ہے؟ 15 00:00:40,140 --> 00:00:44,265 ہم پیشہ اور cons کے بارے میں بات کی ہے ان پر الگ الگ ویڈیوز میں سے ہر ایک کی، 16 00:00:44,265 --> 00:00:46,390 لیکن تعداد کے ایک بہت کچھ ہے ارد گرد پھینک دیا ہو. 17 00:00:46,390 --> 00:00:48,723 جنرل کی ایک بہت کچھ ہے خیالات کے ارد گرد پھینک دیا ہو. 18 00:00:48,723 --> 00:00:51,950 کی کوشش کرتے ہیں اور مضبوط ہیں یہ صرف ایک جگہ میں. 19 00:00:51,950 --> 00:00:55,507 کے خلاف پیشہ وزن دو CONS، اور پر غور 20 00:00:55,507 --> 00:00:57,340 جس آنکڑا ڈھانچہ صحیح اعداد و شمار ہو سکتا ہے 21 00:00:57,340 --> 00:01:01,440 آپ کی مخصوص صورتحال کے لئے ڈھانچہ، ڈیٹا کی جو بھی قسم آپ ذخیرہ کرنے کر رہے. 22 00:01:01,440 --> 00:01:06,625 آپ کو لازمی طور ہمیشہ کی ضرورت نہیں ہے ، سپر روزہ اندراج، منسوخی کا استعمال 23 00:01:06,625 --> 00:01:10,761 ایک trie کی اور تلاش اگر آپ واقعی ڈالنے اور خارج کرنے کے بارے میں پرواہ نہیں کرتے 24 00:01:10,761 --> 00:01:11,260 بہت زیادہ. 25 00:01:11,260 --> 00:01:13,968 آپ کو صرف فوری طور پر بے ترتیب کی ضرورت ہو تو رسائی، شاید ایک سرنی بہتر ہے. 26 00:01:13,968 --> 00:01:15,340 تو کہ کشید دو. 27 00:01:15,340 --> 00:01:18,530 کے چار میں سے ہر ایک کے بارے میں بات کرتے ہیں ڈیٹا ڈھانچے کے اہم اقسام 28 00:01:18,530 --> 00:01:21,720 ہم کے بارے میں بات کی تھی، اور ہے کہ وہ اچھے ہو سکتا ہے جب صرف دیکھنے، 29 00:01:21,720 --> 00:01:23,340 اور جب وہ اتنا اچھا نہیں ہو سکتا. 30 00:01:23,340 --> 00:01:24,610 تو arrays کے ساتھ شروع کر دیں. 31 00:01:24,610 --> 00:01:27,300 اندراج تو، اس قسم کے برا ہے. 32 00:01:27,300 --> 00:01:31,350 >> ایک صف کے آخر میں اضافے، ٹھیک ہے ہم جا کے طور پر ہم ایک سرنی کی تعمیر کر رہے ہیں تو. 33 00:01:31,350 --> 00:01:33,570 لیکن ہم داخل کرنے کی ضرورت ہے وسط میں عناصر، 34 00:01:33,570 --> 00:01:35,550 اندراج پر واپس لگتا قسم، ایک بہت کچھ ہے 35 00:01:35,550 --> 00:01:37,510 وہاں میں ایک عنصر فٹ ہونے کے لئے منتقل. 36 00:01:37,510 --> 00:01:41,170 اور ہم کرنے کے لئے جا رہے ہیں اگر ایسا ہے تو کہیں لیکن ایک صف کے آخر، 37 00:01:41,170 --> 00:01:43,590 کہ شاید اتنی بڑی نہیں ہے. 38 00:01:43,590 --> 00:01:46,710 >> اسی طرح، منسوخی، جب تک ہم ہیں ایک صف کے آخر سے خارج کرنے، 39 00:01:46,710 --> 00:01:49,810 شاید یہ بھی تو اچھا نہیں ہے ہم خالی فرق چھوڑنے کے لئے نہیں کرنا چاہتے، 40 00:01:49,810 --> 00:01:50,790 جو عام طور پر ہم ایسا نہیں کرتے. 41 00:01:50,790 --> 00:01:54,700 ہم ایک عنصر کو خارج کرنا چاہتے، اور پھر قسم کے اسے دوبارہ چوست بنانے. 42 00:01:54,700 --> 00:01:57,670 اور اس کی طرف سے عناصر کو خارج ایک سرنی، بھی اتنی بڑی نہیں. 43 00:01:57,670 --> 00:01:58,820 >> تلاش، اگرچہ، بہت اچھا ہے. 44 00:01:58,820 --> 00:02:00,920 ہم بے ترتیب رسائی حاصل ہے، مسلسل وقت نظر دوڑائیں. 45 00:02:00,920 --> 00:02:03,800 ہم صرف سات کہتے ہیں، اور ہمیں جانا نقل مکانی کے لئے صف سات. 46 00:02:03,800 --> 00:02:05,907 ہم پر جانے کے ساتھ، 20 کا کہنا ہے کہ نقل مکانی کے لئے صف 20. 47 00:02:05,907 --> 00:02:07,240 ہم اس پار iterate کرنے کی ضرورت نہیں ہے. 48 00:02:07,240 --> 00:02:08,630 یہ بہت اچھی بات ہے. 49 00:02:08,630 --> 00:02:11,020 >> Arrays بھی الگ الگ کرنے کے لئے نسبتا آسان ہے. 50 00:02:11,020 --> 00:02:14,040 ہم چھنٹائی کے بارے میں بات ہر وقت اس طرح کے انتخاب کی طرح کے طور پر الگورتھم،، 51 00:02:14,040 --> 00:02:18,820 اندراج کی طرح، بلبلا طرح، ضم قسم، ہم نے ہمیشہ ایسا کرنے کی arrays کے استعمال، 52 00:02:18,820 --> 00:02:21,860 arrays کے لئے بہت آسان ہے کیونکہ ڈیٹا ڈھانچے کے رشتہ دار ترتیب، 53 00:02:21,860 --> 00:02:22,970 ہم نے اب تک دیکھا ہے. 54 00:02:22,970 --> 00:02:24,320 >> انہوں نے یہ بھی نسبتا چھوٹے ہیں. 55 00:02:24,320 --> 00:02:25,695 اضافی جگہ کی ایک بہت نہیں ہے. 56 00:02:25,695 --> 00:02:29,210 آپ کو صرف بالکل کے طور پر زیادہ سے زیادہ مقرر آپ کے ڈیٹا منعقد کرنے کی ضرورت کے طور پر، 57 00:02:29,210 --> 00:02:30,320 اور یہ کہ یہ بہت زیادہ ہے. 58 00:02:30,320 --> 00:02:33,180 تو وہ بہت چھوٹے ہیں اور اس راہ میں موثر. 59 00:02:33,180 --> 00:02:36,000 لیکن ایک اور منفی پہلو، اگرچہ، وہ سائز میں طے کر رہے ہیں ہے. 60 00:02:36,000 --> 00:02:38,630 ہم کس طرح کا اعلان ہے بڑے ہم، ہمارے صف بننا چاہتا ہوں 61 00:02:38,630 --> 00:02:39,940 اور ہم صرف اس پر ایک شاٹ حاصل. 62 00:02:39,940 --> 00:02:41,280 ہم اگاتے ہیں اور یہ سکڑ نہیں کر سکتے ہیں. 63 00:02:41,280 --> 00:02:44,582 >> ہم اس میں اضافہ یا چھوٹا کرنے کی ضرورت ہو تو، ہم ایک مکمل طور پر نئی صف کا اعلان کرنے کی ضرورت ہے، 64 00:02:44,582 --> 00:02:47,750 کے عناصر کی تمام کاپی دوسری صف میں پہلی صف. 65 00:02:47,750 --> 00:02:51,410 اور ہم اس miscalculated تو وقت، ہم اسے دوبارہ کرنے کی ضرورت ہے. 66 00:02:51,410 --> 00:02:52,760 اتنی بڑی نہیں. 67 00:02:52,760 --> 00:02:58,750 تو arrays ہمیں لچک نہیں دیتے عناصر کے متغیر تعداد حاصل کرنے. 68 00:02:58,750 --> 00:03:01,320 >> ایک لنک کی فہرست کے ساتھ، اندراج بہت آسان ہے. 69 00:03:01,320 --> 00:03:03,290 ہم صرف سامنے پر سمت. 70 00:03:03,290 --> 00:03:04,892 منسوخی بھی بہت آسان ہے. 71 00:03:04,892 --> 00:03:06,100 ہم عناصر کو تلاش کرنے کے لئے ہے. 72 00:03:06,100 --> 00:03:07,270 کہ کچھ تلاش شامل. 73 00:03:07,270 --> 00:03:10,270 >> لیکن تم عنصر مل گیا ہے ایک بار آپ کو ایسا کرنے کی ضرورت ہے، سب کے لئے تلاش کر رہے ہیں 74 00:03:10,270 --> 00:03:12,830 ایک پوائنٹر تبدیل، ممکنہ طور پر دو اگر آپ کے پاس 75 00:03:12,830 --> 00:03:15,151 ایک دوگنا list-- منسلک لنک کی فہرست، rather-- 76 00:03:15,151 --> 00:03:16,650 اور پھر آپ صرف نوڈ آزاد کر سکتے ہیں. 77 00:03:16,650 --> 00:03:18,399 آپ کو منتقل کرنے کی ضرورت نہیں ارد گرد سب کچھ. 78 00:03:18,399 --> 00:03:22,090 آپ کو صرف، دو اشارہ تبدیل تاکہ بہت تیز رفتار ہے. 79 00:03:22,090 --> 00:03:23,470 >> تلاش حق، اگرچہ برا ہے؟ 80 00:03:23,470 --> 00:03:26,280 ہمیں ایک تلاش کرنے کے لئے کے لئے ایک لنک کی فہرست میں عنصر، 81 00:03:26,280 --> 00:03:29,154 چاہے اکیلے یا دوگنا، منسلک ہم اسے لکیری تلاش کرنے کے لئے ہے. 82 00:03:29,154 --> 00:03:32,320 ہم شروع میں شروع کرنے کے لئے ہے اور آخر میں منتقل، یا آخر اس اقدام سے شروع 83 00:03:32,320 --> 00:03:33,860 شروع کرنے کے لئے. 84 00:03:33,860 --> 00:03:35,474 ہم اب بے ترتیب تک رسائی نہیں ہے. 85 00:03:35,474 --> 00:03:37,265 ہم کر رہے ہیں تو تلاش کے بہت، شاید 86 00:03:37,265 --> 00:03:39,830 ایک لنک کی فہرست نہیں ہے ہمارے لئے بہت اتنا اچھا. 87 00:03:39,830 --> 00:03:43,750 >> انہوں نے سچ میں بھی ہیں الگ الگ کرنے کے لئے مشکل، ٹھیک ہے؟ 88 00:03:43,750 --> 00:03:45,666 واحد راستہ آپ کر سکتے ہیں واقعی ایک لنک کی فہرست ترتیب 89 00:03:45,666 --> 00:03:47,870 آپ اس کی تعمیر کے طور پر حل کرنے کے لئے ہے. 90 00:03:47,870 --> 00:03:50,497 لیکن آپ کے طور پر الگ الگ تو اس کی تعمیر، آپ کو اب کوئی ہو 91 00:03:50,497 --> 00:03:51,830 اب فوری اضافے بنانے. 92 00:03:51,830 --> 00:03:53,746 تم بس tacking کی نہیں کر رہے ہیں سامنے پر چیزیں. 93 00:03:53,746 --> 00:03:55,710 آپ کو تلاش کرنے کی ضرورت ہے صحیح جگہ ڈال کرنے کے لئے، 94 00:03:55,710 --> 00:03:57,820 اور پھر اپنے اندراج صرف کے بارے میں کے طور پر برا بن جاتا ہے 95 00:03:57,820 --> 00:03:59,390 ایک صف میں ڈالنے کے طور پر. 96 00:03:59,390 --> 00:04:03,130 تو منسلک کی فہرست نہیں ہیں ڈیٹا چھانٹ رہا ہے کے لئے بہت اچھا. 97 00:04:03,130 --> 00:04:05,830 >> انہوں نے یہ بھی خوبصورت چھوٹے، سائز وار ہیں. 98 00:04:05,830 --> 00:04:08,496 دوگنا تھوڑا منسلک فہرست اکیلے منسلک کی فہرست کے مقابلے میں وسیع تر، 99 00:04:08,496 --> 00:04:10,620 جس میں تھوڑا سا بڑے ہیں arrays کے مقابلے میں، لیکن یہ نہیں ہے 100 00:04:10,620 --> 00:04:13,330 ضائع شدہ جگہ کی ایک بڑی رقم. 101 00:04:13,330 --> 00:04:18,730 تو جگہ ایک پریمیم میں ہے، لیکن نہیں بہت شدید پریمیم، 102 00:04:18,730 --> 00:04:22,180 اس کے جانے کے لئے صحیح طریقہ ہو سکتا ہے. 103 00:04:22,180 --> 00:04:23,330 >> ہیش میزیں. 104 00:04:23,330 --> 00:04:25,850 ایک ہیش ٹیبل میں اضافے منصفانہ سیدھا ہے. 105 00:04:25,850 --> 00:04:26,980 یہ ایک دو قدم عمل ہے. 106 00:04:26,980 --> 00:04:30,700 سب سے پہلے ہم ذریعے ہمارے اعداد و شمار کو چلانے کے لئے کی ضرورت ہے ایک ہیش تقریب ایک ہیش کوڈ حاصل کرنے کے لئے، 107 00:04:30,700 --> 00:04:37,550 اور پھر ہم میں عنصر داخل اس ہیش کوڈ جگہ پر ہیش کی میز. 108 00:04:37,550 --> 00:04:40,879 >> لنک کی فہرست کے لئے اسی طرح کی منسوخی،، آپ کے عنصر تلاش ایک بار کے لئے آسان ہے. 109 00:04:40,879 --> 00:04:43,170 تم، سب سے پہلے اس کو تلاش کرنا پڑے لیکن پھر آپ اسے حذف جب، 110 00:04:43,170 --> 00:04:45,128 آپ کو صرف تبادلہ کرنے کی ضرورت اشارہ کے ایک جوڑے، 111 00:04:45,128 --> 00:04:47,250 اگر آپ کو علیحدہ جکڑا جانا؟ استعمال کر رہے ہیں. 112 00:04:47,250 --> 00:04:49,942 آپ کی تحقیقات کا استعمال کرتے ہوئے کر رہے ہیں تو، یا تم نہیں ہو تو 113 00:04:49,942 --> 00:04:51,650 کا استعمال کرتے ہوئے تمام جکڑا جانا ؟. آپ ہیش ٹیبل میں، 114 00:04:51,650 --> 00:04:53,040 منسوخی اصل میں واقعی آسان ہے. 115 00:04:53,040 --> 00:04:57,134 آپ کو ایسا کرنے کی ضرورت ہے تمام ہیش ہے اعداد و شمار، اور پھر اس جگہ پر جانے. 116 00:04:57,134 --> 00:04:58,925 سنبھالنے اور آپ ایسا نہیں کرتے ، کسی بھی collisions سے ہے 117 00:04:58,925 --> 00:05:01,650 آپ کو بہت جلد خارج کرنے کے قابل ہو جائے گا. 118 00:05:01,650 --> 00:05:04,930 >> اب، نظر دوڑائیں جہاں چیزیں ایک چھوٹا سا زیادہ پیچیدہ ہو. 119 00:05:04,930 --> 00:05:06,910 یہ بہتر اوسط پر ہے منسلک کی فہرست کے مقابلے میں. 120 00:05:06,910 --> 00:05:09,560 آپ جکڑا جانا؟ استعمال کر رہے ہیں، اگر آپ اب بھی ایک سے منسلک فہرست ہے، 121 00:05:09,560 --> 00:05:13,170 جس سے آپ کو اب بھی کا مطلب ہے تلاش ایک سے منسلک فہرست نقصان. 122 00:05:13,170 --> 00:05:18,390 آپ لے رہے ہیں کی وجہ سے لیکن آپ لنک فہرست اور 100 یا 1،000 سے زیادہ اس تیز 123 00:05:18,390 --> 00:05:25,380 یا ن آپ ہیش ٹیبل میں عناصر، تم منسلک کی فہرست سائز n- ویں سب ایک ہیں. 124 00:05:25,380 --> 00:05:27,650 وہ سب کافی چھوٹے ہیں. 125 00:05:27,650 --> 00:05:32,080 تم (ن) کے بجائے فہرستوں سے منسلک ہے سائز (ن) کے ایک لنک کی فہرست کے. 126 00:05:32,080 --> 00:05:34,960 >> اور اس طرح یہ حقیقی دنیا مسلسل عام طور پر ہم جس عنصر، 127 00:05:34,960 --> 00:05:39,730 وقت کی پیچیدگی کے بارے میں بات نہ کرو، یہ اصل میں یہاں ایک فرق پڑتا ہے. 128 00:05:39,730 --> 00:05:43,020 تو تلاش اب بھی لکیری ہے آپ جکڑا جانا؟ استعمال کر رہے ہیں تلاش، 129 00:05:43,020 --> 00:05:46,780 لیکن فہرست کی طوالت آپ کے ذریعے تلاش کر رہے ہیں 130 00:05:46,780 --> 00:05:50,080 مقابلے کی طرف سے بہت، بہت مختصر ہے. 131 00:05:50,080 --> 00:05:52,995 ایک بار پھر، آپ چھنٹائی ہے یہاں مقصد، ہیش کی میز کی 132 00:05:52,995 --> 00:05:54,370 شاید صحیح طریقے سے جانے کے لئے نہیں. 133 00:05:54,370 --> 00:05:56,830 چھنٹائی تو بس ایک سرنی کا استعمال کرتے ہیں آپ کے لئے بہت اہم ہے. 134 00:05:56,830 --> 00:05:58,590 >> اور وہ سائز کے پہلوؤں کو چلا سکتے ہیں. 135 00:05:58,590 --> 00:06:01,640 یہ ایک چاہے کہنا مشکل ہے ہیش ٹیبل، چھوٹے یا بڑے ہے 136 00:06:01,640 --> 00:06:04,110 یہ واقعی پر منحصر ہے کیونکہ کتنے بڑے آپ ہیش کی میز ہے. 137 00:06:04,110 --> 00:06:07,340 آپ کو صرف ذخیرہ کرنے جا رہے ہیں تو آپ ہیش ٹیبل میں پانچ عناصر، 138 00:06:07,340 --> 00:06:10,620 اور آپ کو ایک ہیش کی میز ہے اس میں 10،000 عناصر کے ساتھ، 139 00:06:10,620 --> 00:06:12,614 آپ کو شاید جگہ کی ایک بہت برباد کر رہے ہو. 140 00:06:12,614 --> 00:06:15,030 کے برعکس بھی آپ کر سکتے ہیں کیا جا رہا ہے ، بہت کمپیکٹ ہیش میزیں ہے 141 00:06:15,030 --> 00:06:18,720 لیکن چھوٹے اپنے ہیش میز، ہو جاتا ہے ان سے منسلک کی فہرست میں سے ہر ایک اب 142 00:06:18,720 --> 00:06:19,220 ہو جاتا ہے. 143 00:06:19,220 --> 00:06:22,607 اور اس طرح واقعی کی وضاحت کرنے کے لئے کوئی راستہ نہیں ہے بالکل ایک ہیش ٹیبل کے سائز، 144 00:06:22,607 --> 00:06:24,440 لیکن یہ شاید محفوظ ہے یہ عام طور پر کا کہنا ہے کہ 145 00:06:24,440 --> 00:06:27,990 ایک لنک سے بڑا ہونے جا رہا ایک ہی ڈیٹا ذخیرہ فہرست، 146 00:06:27,990 --> 00:06:30,400 ایک trie کے مقابلے میں لیکن چھوٹے. 147 00:06:30,400 --> 00:06:32,720 >> اور کوشش کرتا ہے چوتھے نمبر پر ہیں ان ڈھانچے کے 148 00:06:32,720 --> 00:06:34,070 کہ ہم کے بارے میں بات کر رہے ہیں. 149 00:06:34,070 --> 00:06:36,450 ایک trie میں داخل پیچیدہ ہے. 150 00:06:36,450 --> 00:06:38,400 متحرک کی ایک بہت کچھ ہے میموری مختص کرنے، 151 00:06:38,400 --> 00:06:40,780 خاص طور پر شروع میں، آپ کو تعمیر کرنے کے لئے شروع کر رہے ہیں کے طور پر. 152 00:06:40,780 --> 00:06:43,700 لیکن یہ مسلسل وقت ہے. 153 00:06:43,700 --> 00:06:47,690 یہ صرف انسانی عنصر ہے یہاں یہ مشکل ہے کہ. 154 00:06:47,690 --> 00:06:53,250 شہوت انگیز null پوائنٹر کا سامنا کرنے کے لئے، malloc کے خلائی،، ممکنہ طور پر malloc کے خلا وہاں جانا 155 00:06:53,250 --> 00:06:54,490 وہاں سے ایک بار پھر. 156 00:06:54,490 --> 00:06:58,880 کی دھمکیوں عنصر کی قسم متحرک میموری مختص کرنے میں اشارہ 157 00:06:58,880 --> 00:07:00,130 صاف کرنے کے لئے رکاوٹ ہے. 158 00:07:00,130 --> 00:07:04,550 لیکن تم نے اس کی منظوری دے دی ہے ایک بار، اندراج اصل میں، بہت آسان آتا ہے 159 00:07:04,550 --> 00:07:06,810 اور یہ یقینی طور پر مسلسل وقت ہے. 160 00:07:06,810 --> 00:07:07,680 >> منسوخی کے لئے آسان ہے. 161 00:07:07,680 --> 00:07:11,330 آپ کو ایسا کرنے کی ضرورت ہے تمام نیچے تشریف ہے اشارہ اور مفت نوڈ کے جوڑے، 162 00:07:11,330 --> 00:07:12,420 تاکہ بہت اچھا ہے. 163 00:07:12,420 --> 00:07:13,930 تلاش بھی بہت تیز ہے. 164 00:07:13,930 --> 00:07:16,780 یہ صرف پر مبنی ہے آپ کے ڈیٹا کی لمبائی. 165 00:07:16,780 --> 00:07:19,924 آپ کے اعداد و شمار کے تمام ہے تو پانچ کردار ڈور، 166 00:07:19,924 --> 00:07:22,590 مثال کے طور پر، آپ کو پانچ ذخیرہ کرنے کر رہے آپ کے trie میں کردار ڈور، 167 00:07:22,590 --> 00:07:25,439 یہ صرف پانچ اقدامات آپ کے لئے تلاش کر رہے ہیں تلاش. 168 00:07:25,439 --> 00:07:28,480 پانچ تو، صرف ایک مستقل عنصر ہے ایک بار پھر، اندراج، منسوخی، اور تلاش 169 00:07:28,480 --> 00:07:31,670 یہاں مؤثر طریقے سے، تمام مسلسل وقت ہے. 170 00:07:31,670 --> 00:07:34,880 >> ایک اور بات آپ trie کے ہے اصل قسم پہلے سے ہی صحیح، حل؟ 171 00:07:34,880 --> 00:07:36,800 ہم ہیں کہ کس طرح کی وجہ سے ڈالنے عناصر، 172 00:07:36,800 --> 00:07:40,060 کے خط کی طرف سے خط جا کر کلید کے ہندسوں کی طرف سے اہم، یا عددی، 173 00:07:40,060 --> 00:07:45,084 عام طور پر، آپ trie کے ہونے کی وجہ سے ختم ہو جاتی ہے تم اس کی تعمیر کے طور پر قسم کے مطابق. 174 00:07:45,084 --> 00:07:47,250 یہ واقعی کرتا ہے نہیں ہے احساس چھنٹائی کے بارے میں سوچنا 175 00:07:47,250 --> 00:07:49,874 اسی طرح میں ہم کے بارے میں سوچنا یہ arrays کے، یا منسلک کی فہرست کے ساتھ، 176 00:07:49,874 --> 00:07:51,070 یا ہیش میزیں. 177 00:07:51,070 --> 00:07:54,780 لیکن کچھ معنوں میں، آپ آپ کے طور پر جانا trie کے مطابق ہے. 178 00:07:54,780 --> 00:07:58,630 >> منفی پہلو، کورس کی، یہ ہے کہ ایک trie تیزی سے بھاری ہو جاتا ہے. 179 00:07:58,630 --> 00:08:02,970 ہر جنکشن نقطہ نظر سے، آپ کو ہو سکتا ہے آپ کی چابی ہندسوں پر مشتمل ہے تو have--، 180 00:08:02,970 --> 00:08:04,880 آپ کو دوسرے 10 ہے جگہوں پر آپ، جا سکتے ہیں جو 181 00:08:04,880 --> 00:08:07,490 ہر نوڈ کا مطلب ہے کہ میں معلومات پر مشتمل 182 00:08:07,490 --> 00:08:11,440 ڈیٹا کے بارے میں آپ کو محفوظ کرنا چاہتے ہیں اس نوڈ، کے علاوہ 10 سے اوپر اشارہ. 183 00:08:11,440 --> 00:08:14,430 جس، CS50 IDE پر، 80 بائٹس ہے. 184 00:08:14,430 --> 00:08:17,220 تو اس کے لئے کم از کم 80 بائٹس ہے آپ کو بنانے کے کہ ہر نوڈ، 185 00:08:17,220 --> 00:08:19,240 اور یہ کہ بھی ڈیٹا گنتی نہیں ہے. 186 00:08:19,240 --> 00:08:24,950 اور اپنے مراکز ہیں بجائے ہندسوں کے خط، 187 00:08:24,950 --> 00:08:27,825 اب آپ 26 اشارہ ہے ہر جگہ سے. 188 00:08:27,825 --> 00:08:32,007 اور 26 مرتبہ 8 شاید 200 بائٹس، یا کچھ اس طرح. 189 00:08:32,007 --> 00:08:33,840 اور آپ کو دارالحکومت ہے اور آپ کر سکتے ہیں lowercase-- 190 00:08:33,840 --> 00:08:35,381 میں اس کے ساتھ جا رہا ہوں جہاں حق، دیکھ رہے ہو؟ 191 00:08:35,381 --> 00:08:37,500 آپ نوڈ واقعی حاصل کر سکتے ہیں بڑے، اور اس سے Trie 192 00:08:37,500 --> 00:08:40,470 خود، مجموعی طور پر، کر سکتے ہیں بھی، بہت بڑا ملتا ہے. 193 00:08:40,470 --> 00:08:42,630 جگہ ایک اعلی پر ہے تو آپ کے سسٹم پر پریمیم، 194 00:08:42,630 --> 00:08:45,830 ایک trie کے لئے صحیح راستہ نہیں ہو سکتا یہاں تک کہ اس کے دوسرے فوائد اگرچہ، جانا 195 00:08:45,830 --> 00:08:47,780 کھیل میں آتے ہیں. 196 00:08:47,780 --> 00:08:48,710 میں ڈوگ لایڈ ہوں. 197 00:08:48,710 --> 00:08:50,740 یہ CS50 ہے. 198 00:08:50,740 --> 00:08:52,316