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