[இசை] டேவிட் MALAN: இந்த CS50 உள்ளது. இந்த தொடக்க மற்றும் இரண்டு ஆகிறது literally-- கிட்டத்தட்ட முடிவுக்கு போன்ற end-- வாரம் ஆறு. நான் ஒரு பகிர்ந்து நினைத்தேன் ஒரு வேடிக்கையான உண்மை சிறிது. நான் ஒரு இருந்து இந்த இழுத்து கடந்த செமஸ்டர் தரவு அமைக்க. நீங்கள் நாம் ஒவ்வொரு மீது நீங்கள் கேட்கலாம் என்று நினைவு இருக்கலாம் ப தொகுப்பு வடிவம் நீங்கள் ஆன்லைன் பார்த்தோம் என்றால் அல்லது நீங்கள் நேரில் கலந்து என்றால். மற்றும் இங்கே தரவு உள்ளது. எனவே இன்று மிகவும் எதிர்பார்க்கப்பட்டதுதான். ஆனால் நாம் ஒரு பிட் செலவிட வேண்டும் நேரம் நீங்கள் இருப்பினும். ஏன் யாரும் இந்த ஊகம் விரும்புகிறீர்களா வரைபடம், வரை கீழே, கீழே, அதனால் jaggy உள்ளது அதனால் தொடர்ந்து? என்ன சிகரங்களையும் ஒவ்வொரு செய்கிறது மற்றும் பள்ளங்கள் பிரதிநிதித்துவம்? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: உண்மையில். மேலும் நகைச்சுவையுடன், கடவுள் தடுக்கிறார் நாம் ஒரு வெள்ளிக்கிழமை விரிவுரை ஒன்றை செமஸ்டர் ஆரம்பத்தில், என்று நாம் நடக்க பார்க்க என்ன தான். எனவே இன்று, நாம் ஒரு பிட் பங்கேற்க தரவு கட்டமைப்புகள் பற்றி மேலும். நீங்கள் ஒரு திட மேலும் கொடுக்க ஐந்து மணிக்கு பிரச்சினைகளுக்கு மன மாதிரி, இது இப்போது இல்லை. எழுத்துப்பிழைகள், அதில், நாம் தருகிறேன் நீங்கள் ஒரு உரை கோப்பு கொடுக்குமாறு சில 100,000 பிளஸ் ஆங்கில வார்த்தைகளை, மற்றும் நீங்கள் வேண்டும் போகிறோம் புத்திசாலித்தனமாக அவர்களுக்கு ஏற்ற எப்படி கண்டுபிடிக்க நினைவகத்தில், ரேம் ஒரு, சில தரவு பயன்படுத்தி உங்கள் விருப்பப்படி அமைப்பு. இப்போது அத்தகைய ஒரு தரவு கட்டமைப்பு முடிந்த இருக்க கூடாது ஒருவேளை இருக்கலாம், ஆனால், மிகவும் எளிமையான இணைக்கப்பட்ட பட்டியலில், இது நாம் கடந்த முறை அறிமுகப்படுத்தப்பட்டது. மற்றும் ஒரு இணைக்கப்பட்ட பட்டியலில் குறைந்தது இருந்தது ஒரு அணி மீது ஒரு நன்மை. ஒரு நன்மை என்ன தான் விவாதிக்கக்கூடிய ஒரு இணைக்கப்பட்ட பட்டியலில்? பார்வையாளர்கள்: புகுத்தியது. டேவிட் MALAN: புகுத்தியது. நீங்கள் என்ன அர்த்தம்? பார்வையாளர்கள்: எந்த இடத்திலும் சேர்ந்து பட்டியலில் [செவிக்கு புலப்படாமல்]. டேவிட் MALAN: நல்ல. எனவே நீங்கள் ஒரு உறுப்பு எங்கு நுழைக்க முடியாது நீங்கள் பட்டியலில் மத்தியில் வேண்டும் எதையும் கலக்கு இல்லாமல், இது நாம் எங்கள் வரிசையாக்க இல், முடித்தோம் விவாதங்கள், உள்ளது ஒரு நல்ல விஷயம், அது நேரம் எடுக்கும் என்பதால் உண்மையில் செல்ல அந்த மனிதர்கள் அனைவரும் இடது அல்லது வலது. அதனால் ஒரு இணைக்கப்பட்ட பட்டியலில், நீங்கள் வெறும் malloc உடன் ஒதுக்க, ஒரு புதிய கணு, பின்னர் ஒரு ஜோடி புதுப்பிக்க சுட்டிகள் இரண்டு, மூன்று நடவடிக்கைகளை max-- மற்றும் நாம் யாரோ ஸ்லாட் முடிகிறது ஒரு பட்டியலில் எங்கேயும். வேறு என்ன நன்மை பயக்கும் ஒரு இணைக்கப்பட்ட பட்டியலில் பற்றி? அப்படியா? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: பெர்பெக்ட். சரியான. அது உண்மையில் மாறும். நீங்கள் செய்து என்று, முன்கூட்டியே, சில நிலையான அளவு நினைவகம் துண்டின், போன்ற நீங்கள் வேண்டும் ஒரு வரிசை, தலைகீழாக இதில் நீங்கள் மட்டும் மீது முனைகளில் ஒதுக்க முடியும் என்று ஆகிறது தேவை இதனால் மட்டுமே அதிக இடத்தை பயன்படுத்தி நீங்கள் உண்மையில் வேண்டும் என. ஒரு வரிசை மாறாக, நீங்கள் போகலாம் தற்செயலாக கூட சிறிய ஒதுக்க. பின்னர் அது வெறும் நடக்கிறது கழுத்தில் ஒரு வலி இருக்க ஒரு புதிய பெரிய வரிசை மறு, நகல் எல்லாம் முடிந்துவிட்டது, பழைய வரிசை விடுவிக்க பின்னர் உங்கள் வணிக பற்றி செல்ல. அல்லது மோசமான, நீங்கள் வழி ஒதுக்க வேண்டும் நீங்கள் உண்மையில் வேண்டும் விட நினைவகம், மற்றும் நீங்கள் மிகவும் வேண்டும் போகிறோம் அதனால் பேச, வரிசை ஆங்காங்கே மக்கள். எனவே ஒரு இணைக்கப்பட்ட பட்டியலில் இந்த நீங்கள் கொடுக்கிறது சுறுசுறுப்பு மற்றும் நெகிழ்வு நன்மைகள் புகுத்தல் மற்றும் நீக்கங்கள் உடன். ஆனால் நிச்சயமாக பணம் ஒரு விலை இருக்க வேண்டும். கருப்பொருள்கள் உண்மையில், ஒரு வினாடி வினா பூஜ்யம் ஆராயப்படலாம் இருந்தது பேரத்தின் ஒரு ஜோடி நாம் இதுவரை பார்த்த. எனவே ஒரு ஒரு பணம் விலை அல்லது என்ன தான் ஒரு இணைக்கப்பட்ட பட்டியலில் எதிர்மறையாக? ஆமாம். பார்வையாளர்கள்: இல்லை சீரற்ற அணுகல். டேவிட் MALAN: இல்லை சீரற்ற அணுகல். ஆனால் யார் கவலைப்படுகிறார்கள்? ரேண்டம் அணுகல் கட்டாய ஒலி. பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: நிச்சயமாக. நீங்கள் வேண்டும் என்றால் ஒரு சில வழிமுறை மற்றும் என்னை உண்மையில் முன்மொழிய விரும்புகிறேன் குறிப்பாக பைனரி தேடல், இது நாம் மிகவும் ஒரு பிட் பயன்படுத்தப்படும் ஒன்றாகும் நீங்கள் சீரற்ற அணுகல் இல்லை என்றால், நீங்கள் என்று எளிய கணித செய்ய முடியாது நடுத்தர உறுப்பு போன்ற கண்டறியும் மற்றும் சரியான அது குதித்து. நீங்கள் பதிலாக முதலில் தொடங்க வேண்டும் உறுப்பு மற்றும் நேர்க்கோட்டில் இடது இருந்து தேட வலது நீங்கள் கண்டுபிடிக்க வேண்டும் என்றால் நடுத்தர அல்லது வேறு எந்த உறுப்பு. பார்வையாளர்கள்: அது ஒருவேளை இன்னும் நினைவகம் ஆகும். டேவிட் MALAN: மேலும் நினைவகம் அழைத்துச்செல்கிறது. எங்கே என்று கூடுதல் ஆகிறது நினைவகத்தில் இருந்து வரும் செலவாகும்? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: நிச்சயமாக. இங்கே இந்த வழக்கில், நாம் இருந்தோம் முழு ஒரு இணைக்கப்பட்ட பட்டியலில், மற்றும் இன்னும் நாம் இரட்டிப்பாக்க நினைவகத்தின் அளவை நாங்கள் இந்த சுட்டிகள் சேமித்து வேண்டும். போன்ற ஒரு பெரிய ஒப்பந்தம் இப்போது குறைவாக உங்கள் structs பெரிய கிடைக்கும் மற்றும் நீங்கள் ஒரு எண் சேமித்து ஆனால் ஒருவேளை ஒரு மாணவர் அல்லது வேறு பொருள். ஆனால் புள்ளி நிச்சயமாக இருக்கிறது. எனவே நடவடிக்கைகள் பல இணைக்கப்பட்ட பட்டியல்கள் மீது வரவழைக்கப்பட்டனர் n-- நேரியல் பெரிய ஓ இருந்தன. செருகும் அல்லது தேடல் போன்ற விஷயங்கள் அல்லது வழக்கு ஒரு உறுப்பு நீக்கம் மிகவும் இறுதியில் இருக்கும் நடந்தது அது சரியாகவில்லை அல்லது இல்லை என்பதை பட்டியலில். சில நேரங்களில் நீ அதிர்ஷ்டசாலி மற்றும் கூடும் இந்த நடவடிக்கைகளுக்கு மிகவும் குறைந்த எல்லைக்கு நீங்கள் என்றால் கூட நிலையான நேரம் இருக்கலாம் எப்போதும் முதல் உறுப்பு பார்த்து, உதாரணமாக. ஆனால் இறுதியில், நாம் வாக்குறுதி புனித புத்தகமாகும் அடைய தரவு கட்டமைப்புகள், அல்லது சில தோராயமாக்கல்களும், நிலையான நேரம் மூலம். நாம் கூறுகள் கண்டுபிடிக்க அல்லது கூறுகளை சேர்க்க முடியுமா அல்லது ஒரு தனிமங்களை பட்டியலில் இருந்து நீக்க? நாம் மிகவும் விரைவில் பார்ப்போம். மற்றும் அது என்று ஒரு மாறிவிடும் நாம் இருக்கிறோம் பொறிமுறைகள் இன்று பயன்படுத்த தொடங்க போகிறோம், ப வருடாந்திர பயன்பாடு, ஐந்து அமைத்தது உண்மையில் மிகவும் பழக்கமான. உதாரணமாக, இந்த ஒரு கொத்து என்றால் பரீட்சை புத்தகங்கள், இவை ஒவ்வொன்றும் ஒரு மாணவர் முதல் உள்ளது அது மீது கடந்த பெயர், நான் அவர்களிடம் இருந்து அழைத்து ஒரு பரீட்சை முடிவில், மற்றும் அவர்கள் அனைத்து அழகாக இருக்கிறார்கள் ஒரு சீரற்ற வரிசையில் அதிகம், மற்றும் நாம் வரிசையாக்க பற்றி செல்ல வேண்டும் இந்த தேர்வுகள் அதனால் ஒருமுறை வரிசைப்படுத்தப்பட்ட அது வெறும் நிறைய சுலபம் மற்றும் வேகமாக அவர்களை வெளியே திரும்ப ஒப்படைக்க அகர வரிசைப்படி மாணவர்கள். உங்கள் உணர்வுகளை என்ன இருக்க வேண்டும் இந்த போன்ற தேர்வுகள் ஒரு குவியல்? சரி, நீங்கள் என்னை போன்ற என்றால், நீங்கள் இந்த மீ என்று பார்க்க வேண்டும், அதனால் நான், அப்படி ஒரு இந்த வைக்க போகிறேன் இந்த என் அட்டவணை அல்லது என் மாடியில் எங்கே என்றால் நான் விஷயங்களை பரப்பி out-- அல்லது என் வரிசை really-- நான் அங்கு திருமதி அனைத்து வைக்க வேண்டும். ஓ. இங்கே ஒரு ஏ எனவே நான் வல்லமை தான் இங்கே மீது போல் வைத்து. ஓ. இங்கே நான் போகிறேன் மற்றொரு ஏ தான் இங்கே மீது வைக்க. இங்கே ஒரு இசட் இங்கே மற்றொரு எம் அதனால் உள்ளது நான் இந்த மாதிரி குவியல்களை செய்து தொடங்க வேண்டும். பின்னர் ஒருவேளை நான் பின்னர் செல்ல விரும்புகிறேன் மற்றும் வகையான மிகவும் nitpicky-அவர்கூட வகையான தனிப்பட்ட குவியல்களை. ஆனால் புள்ளி நான் இருக்கும் உள்ளது நான் கை இருக்கிறேன் என்று உள்ளீடு மற்றும் நான் சில வெள்ளை செய்யும் என்று உள்ளீடு அடிப்படையாக முடிவு. அது ஒரு தொடங்குகிறது என்றால், அங்கே அதை வைத்து. அது இசட் தொடங்குகிறது என்றால், அது மேல் வைத்து இடையில் அங்கு, மற்றும் எல்லாம். எனவே இந்த என்று ஒரு நுட்பமாகும் பொதுவாக hashing-- எச்-A, S-H-- அறியப்படுகிறது இது பொதுவாக எடுத்து பொருள் உள்ளீடு மற்றும் கணக்கிட்டு உள்ளீடு பயன்படுத்தி ஒரு மதிப்பு, பொதுவாக ஒரு எண், மற்றும் என்று எண் ஒரு சேமிப்பு ஒரு குறியீட்டு கொள்கலன், ஒரு வரிசை போல். எனவே வேறு வார்த்தைகளில், நான் ஒரு வேண்டும் ஹாஷ் சார்பு, நான் என் தலையில் செய்ய, நான் யாரோ தான் பார்க்க வேண்டும் என்று ஒரு தொடங்குகிறது யார் பெயர், நான் என்று கண்டறிவதில் போகிறேன் என் தலையில் பூஜ்ஜியத்திற்கு. நான் இசட் யாராவது பார்த்தால், நான் இருக்கிறேன் என் தலையில் 25 என்று கண்டறிவதில் போகிறது பின்னர் ஒரு என்று வைத்து கடந்த மிக குவியல். இப்போது, நீங்கள் என் மூளை இல்லை பற்றி யோசிக்க ஆனால் ஒரு சி நிரல், என்ன எண்கள் முடிந்த நீங்கள் அதே விளைவாக அடைய தங்கியிருக்க? வேறு வார்த்தைகளில் கூறுவதானால், நீங்கள் என்றால் , ASCII எழுத்துகளின் ஒரு இருந்தது எப்படி நீங்கள் தீர்மானிக்க வேண்டும் என்ன வாளி அதை வைத்து? ஒருவேளை நீங்கள் வேண்டும் வாளி 65, அதை வைத்து எந்த அங்கே இருக்கும் எந்த நல்ல காரணம். எங்கே நீங்கள் ஒரு போட வேண்டும் அதன் ASCII மதிப்பு அடிப்படையில்? எங்கே நீங்கள் அதன் ஆஸ்கி செய்ய வேண்டும் மதிப்பு ஒரு சிறந்த வாளி கொண்டு வர அதை வைத்து? பார்வையாளர்கள்: கழித்தல் ஏ டேவிட் MALAN: ஆமாம். எனவே கழித்து அல்லது கழித்தல் குறிப்பாக 65 அது தான் என்றால் ஒரு மூலதன ஏ அல்லது 98 என்றால் அது ஒரு ஸ்மால் ஒரு தான். அதனால் அந்த மிக, எங்களுக்கு அனுமதிக்க வேண்டும் வெறுமனே மற்றும் மிகவும் arithmetically, அப்படி ஒரு வாளி ஏதாவது வைத்து. எனவே, நாம் உண்மையில் செய்ய மாறிவிடும் இந்த அத்துடன் கூட வினாவிடை. எனவே நீங்கள் வட்டமிட்டது நினைவு இருக்கலாம் உங்கள் அட்டையில் ஆசிரியர் சக பெயர். மற்றும் TF தான் பெயர்கள் ஏற்பாடு அகர வரிசைப்படி இந்த பத்திகள், நன்றாக, அதை நம்ப அல்லது இல்லை, போது எங்களுக்கு அனைத்து 80 பிளஸ் , தர மற்ற இரவு ஒன்றாக கிடைத்தது எங்கள் கிரேடிங் செயல்பாட்டில் கடந்த படி ஒரு பெரிய ஒரு வினாடி புல உள்ளது [செவிக்கு புலப்படாமல்] மாடி விண்வெளி மற்றும் அனைவருக்கும் வினாவிடை வெளியே போட தங்கள் TF தான் சரியாக பொருட்டு அட்டையில் பெயர்கள், ஏனெனில் பின்னர் அது எங்களுக்கு நிறைய சுலபம் என்று பயன்படுத்தி நேரியல் மூலம் தேட தேட அல்லது புத்திசாலித்தனம் சில வகையான ஒரு TF கண்டுபிடிக்க அவரது அல்லது அவரது மாணவர்கள் 'வினாடி. ஹாஷிங் எனவே இந்த யோசனை நீங்கள் பார்க்க வேண்டும் என்று மிகவும் சக்திவாய்ந்த உண்மையில் மிகவும் உள்ளது பொதுவான மற்றும் மிகவும் உள்ளுணர்வு, மிகவும் ஒருவேளை பிரித்து போன்ற மற்றும் வெற்றிபெறு வாரம் பூஜ்யம் இருந்தது. Hackathon நான் வேகமாக முன்னோக்கி ஆண்டுகளுக்கு ஒரு ஜோடி முன்பு. இந்த, Zamyla மற்றும் ஒரு ஜோடி இருந்தது மற்ற ஊழியர்கள் வாழ்த்து மாணவர்கள் அவர்கள் இடத்திற்கு வந்தார். மற்றும் நாம் மடிப்பு ஒரு மொத்தமாக இருந்தது பெயர் குறிச்சொற்களை அங்கு அட்டவணைகள். நாம் பெயர் குறிச்சொற்களை ஏற்பாடு உடன் அங்கு போன்றே மற்றும் அங்கு Zs. அதனால் டிஎஃப்எஸ் ஒன்று மிகவும் புத்திசாலித்தனமாக அறிவுறுத்தல்கள் இந்த எழுதினார் நாளும். மற்றும் செமஸ்டர் இந்த வாரம் 12 அனைத்து சரியான அர்த்தத்தில் மற்றும் எல்லோரையும் என்ன செய்ய வேண்டும் என்று தெரியும். ஆனால் எப்போது வேண்டுமானாலும் நீங்கள் இருக்கிறீர்கள் அதே வழியில் வரிசைப்படுத்தப்படும், நீங்கள் செயல்படுத்தி வருகிறோம் ஒரு ஹாஷ் அதே கருத்து. எனவே அது ஒரு சிறிது முறைப்படுத்துவது அனுமதிக்க. இங்கே ஒரு வரிசை உள்ளது. அது ஒரு சிறிய இருக்கும் வரையப்பட்ட பரந்த வெறும் பார்வை, சித்தரிக்க, நாம் சரங்களை வைக்க வேண்டும் என்று இந்த மாதிரி ஏதாவது. இந்த வரிசை தெளிவாக அளவு 26 மொத்த. மற்றும் விஷயம் என்று அட்டவணை தன்னிச்சையாக. ஆனால் இந்த ஒரு கலைஞரின் கடத்தல் உள்ளது ஒரு ஹாஷ் அட்டவணை இருக்கலாம் என்ன. எனவே ஒரு ஹாஷ் அட்டவணை இப்போது போகிறது ஒரு உயர் மட்ட தரவு கட்டமைப்பு இருக்க. நாள் முடிவில் நாங்கள் உங்களைப் பார்க்க போகிறீர்கள் ஒரு ஹாஷ் அட்டவணை, செயல்படுத்த முடியும் மிகவும் சோதனை வரி போன்ற உள்ளது மிகவும் இந்த போன்ற ஒரு hackathon மணிக்கு அட்டவணை பரீட்சை புத்தகங்கள் வரிசைப்படுத்த பயன்படுத்தப்படும். ஆனால் ஒரு ஹாஷ் அட்டவணை உள்ளது இந்த உயர் மட்ட வகையான ஒரு வரிசை பயன்படுத்த முடியும் என்று கருத்து பேட்டை அதை செயல்படுத்த அடியில் அல்லது அது ஒரு நீளம் பட்டியலில் பயன்படுத்த, அல்லது கூட முடியவில்லை ஒருவேளை சில மற்ற தரவு கட்டமைப்புகள். இப்போது அந்த theme-- எடுக்கும்போது தான் இந்த அடிப்படை பொருட்கள் சில ஒரு வரிசை மற்றும் இந்த கட்டிடம் போன்ற ஒரு நீளம் பட்டியலில் இப்போது தடுக்க மற்றும் நாம் உருவாக்க முடியும் வேறு என்ன பார்த்து அந்த மேல், பொருட்கள் போன்ற ஒரு செய்முறையை ஒரு, மேலும் செய்து சுவாரஸ்யமான மற்றும் பயனுள்ள இறுதி முடிவு. ஹாஷ் அட்டவணை எனவே நாம் அது செயல்படுத்த வேண்டும் நினைவகத்தில் pictorially இந்த போன்ற, ஆனால் எப்படி அது உண்மையில் வரை குறியீட்டு? சரி, ஒருவேளை வெறுமனே இந்த உள்ளது. அனைத்து தொப்பிகள் திறன், தான் என்றால் உதாரணமாக 26 சில constant--, alphabet-- 26 கடிதங்கள் நான் என் மாறி அட்டவணை கூப்பிடுகிறேன், மற்றும் நான் போகிறேன் என்று கூறுவது கூடும் அங்கு, அல்லது சரம் எரிப்பதை நட்சத்திரங்கள் வைத்து. எனவே அது போன்ற எளிது என்றால் இந்த என நீங்கள் ஒரு ஹாஷ் அட்டவணை செயல்படுத்த வேண்டும். இன்னும், இந்த உண்மையில் ஒரு வரிசை உள்ளது. ஆனால் மீண்டும், ஒரு ஹாஷ் அட்டவணை என்ன நாம் தருகிறேன் இப்போது உள்ளது தான் என்று ஒரு அப்ஸ்ட்ராக்ட் டேட்டா டைப் அழைக்க மேல் ஒரு கருத்துரு அடுக்குதல் வகையான மேலும் இவ்வுலகை ஏதாவது இப்போது ஒரு வரிசை விரும்புகிறது. இப்போது, எப்படி நாம் செல்ல செய்கிறது பிரச்சினைகளை தீர்க்கும் பற்றி? சரி, முன்பு நான் ஆடம்பர இருந்தேன் இங்கே போதுமான அட்டவணை இடைவெளி கொண்ட நான் வைக்க முடியும் என்று வினாடி எங்கும் நான் விரும்பினேன். எனவே என இங்கே போகலாம். Zs இங்கே போகலாம். திருமதி இங்கே போகலாம். பின்னர் நான் சில கூடுதல் இடத்தை இருந்தேன். ஆனால் இந்த ஒரு ஏமாற்று சரியான ஒரு பிட் உள்ளது இப்போது இந்த அட்டவணை ஏனெனில், நான் என்றால் உண்மையில் ஒரு வரிசை என நினைத்தேன், தான் சில நிலையான அளவு இருக்க போகிறது. எனவே தொழில்நுட்ப, நான் இழுக்க என்றால் மற்றொரு மாணவர் வினாடி வினா வரை மற்றும் இந்த நபரின், ஓ, பார்க்க பெயர், கூட ஒரு தொடங்குகிறது நான் வகையான அங்கு வைத்து வேண்டும். ஆனால் விரைவில் நான் இல்லை என்றால், அங்கு வைத்து இந்த அட்டவணை உண்மையில் ஒரு வரிசை பிரதிபலிக்கிறது, நான் நாயுடு அல்லது clobbering போகிறேன் எவர் இந்த மாணவர் வினாடி வினா உள்ளது. வலது? இந்த ஒரு வரிசை இருந்தால், ஒரே ஒரு விஷயம் முடியும் இந்த செல்கள் அல்லது உறுப்புகள் ஒவ்வொன்றும் செல்ல. அதனால் நான் வகையான வேண்டும் தேர்ந்தெடுத்து தேர்வு செய்ய. இப்போது முந்தைய நான் வகையான ஏமாற்றி இந்த அல்லது நான் வெறும் வகையான அடுக்கப்பட்ட ஒருவருக்கொருவர் மேலே அவர்களை. ஆனால் அந்த குறியீடு பறக்க போகிறது. எனவே நான் எங்கே வைத்து யாருடைய பெயர் இரண்டாவது மாணவர் நான் அனைத்து இந்த என்றால் ஒரு உள்ளது கிடைக்கும் அட்டவணை இட? நான் மூன்று இடங்கள் மற்றும் அது பயன்படுத்தப்படும் ஒரு சில மற்றவர்கள் உள்ளது போல் தெரிகிறது. நீங்கள் என்ன செய்ய முடியும்? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: ஆமாம். ஒருவேளை தான் எளிய அதை வைத்துக்கொள்ளலாம். வலது? நான் அதை கொடுக்க வேண்டும் எங்கே அது பொருந்தும். எனவே நான் அது வைக்க போகிறேன் தொழில்நுட்ப ஒரு பி எங்கு செல்ல வேண்டும். இப்போது, நிச்சயமாக, நான் ஆரம்பிக்கிறேன் ஒரு மூலையில் என்னை சித்தரிக்க. நான் ஒரு மாணவர் கிடைக்கும் என்றால் யாருடைய பெயர் உண்மையில் பி, இப்போது பி ஒரு சிறிய சென்றார் போகிறது முன்னோக்கி, என, இங்கும், நடக்க கூடும் இந்த ஒரு பி என்றால், இப்போது அது இங்கே செல்ல உள்ளது. எனவே இந்த மிக விரைவில் பிரச்சனைக்குரியதாக மாறக்கூடியதாகவும் ஆனால் அது ஒரு நுட்பம் என்று உண்மையில் நேரியல் ஆய்வு என குறிப்பிடப்படுகிறது, அதன்படி நீங்கள் கருத்தில் உங்கள் வரிசை வரி சேர்த்து இருக்க வேண்டும். நீங்கள் வெறும் வகையான ஆய்வு அல்லது ஒவ்வொரு கிடைக்க உறுப்பு ஆய்வு ஒரு கிடைக்கும் இடத்தில் தேடும். மற்றும் விரைவில் நீங்கள் காணலாம் ஒன்று, நீங்கள் அங்கு அதை கைவிட. இப்போது, விலை இப்போது பணம் இந்த தீர்வு என்ன? நாம் ஒரு நிலையான அளவு வரிசை, மற்றும் நான் பெயர்கள் சேர்க்க போது அது ஒரு, குறைந்த பட்சம் ஆரம்பத்தில், என்ன தான் செருகும் இயங்கும் நேரம் மாணவர்கள் 'வைப்பதற்கான சரியான வாளிகள் வினாடி? என்ன பெரிய ஓ? பார்வையாளர்கள்: N. டேவிட் MALAN: நான் N பெரிய ஓ கேள்விப்பட்டேன். உண்மை இல்லை. ஆனால் நாம் தவிர கிண்டலடிக்கிறேன் ஏன் ஒரு நொடியில். அது வேறு என்ன இருக்கும்? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: என்னை பார்வை அதை செய்வோம். எனவே இந்த கடிதம் எஸ் உள்ளது பார்வையாளர்கள்: அது ஒன்று தான். டேவிட் MALAN: இது ஒன்று தான். வலது? இந்த ஒரு வரிசை, இது நாம் சீரற்ற அணுகல் வேண்டும் என்பதாகும். மற்றும் நாம் இந்த நினைத்தால் பூஜ்யம் மற்றும் இந்த 25 என, மற்றும் நாம் உணர்ந்து, ஓ, இங்கே என் உள்ளீடு எஸ் தான், நான் நிச்சயமாக மாற்ற முடியும் எஸ், ஒரு ASCII எழுத்துகளின், ஒரு தொடர்புடைய எண் பூஜ்யம் மற்றும் 25 இடையே பின்னர் உடனடியாக அது எங்கிருந்து அதை வைத்து. ஆனால் நிச்சயமாக, விரைவில் நான் கிடைக்கும் பெயர் தான் யார் இரண்டாவது நபர் A அல்லது B அல்லது சி உள்ளது இறுதியில், நான் பயன்படுத்திய என்றால் நேரியல், என் தீர்வாக ஆய்வு இயங்கும் நேரம் மோசமான வழக்கில் செருகும் உண்மையில் என்ன சென்று பொறுப்பேற்று போகிறது? நான் இங்கே அதை கேட்க சரியாக ஆரம்ப. பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: எனவே அது உண்மையில் ஒரு முறை n உள்ளது நீங்கள் போதுமான பெரிய தரவு தொகுப்பு வேண்டும். எனவே, ஒரு புறம், என்றால் உங்கள் வரிசை போதுமான பெரிய மற்றும் உங்கள் தரவை நீங்கள், போதுமான சிதறியுள்ள இந்த அழகான நிலையான நேரம் கிடைக்கும். ஆனால் விரைவில் நீங்கள் தொடங்கும் என மேலும் கூறுகள் பெறுவது, மற்றும் வெறும் புள்ளிவிவர நீங்கள் பெற கடிதம் அதிக மக்கள் ஒரு தங்கள் பெயரை அல்லது கடிதம் பி, அது சாத்தியமான முடிந்த ஏதாவது இன்னும் ஒருபடி சென்று பொறுப்பேற்று. எனவே மிக சரியான இல்லை. நாம் சிறப்பாக செய்ய முடியும்? சரி, என்ன இருந்தது எங்கள் தீர்வு போது நாம் முன் விட சுறுசுறுப்பு வேண்டும் ஒரு வரிசை போன்ற ஏதாவது அனுமதி? பார்வையாளர்கள்: [செவிக்கு புலப்படாமல்] டேவிட் MALAN: நாம் என்ன அறிமுகப்படுத்த? ஆமாம். எனவே ஒரு இணைக்கப்பட்ட பட்டியலில். சரி, ஒரு இணைக்கப்பட்ட என்ன என்று பார்ப்போம் பட்டியலில் பதிலாக எங்களுக்கு என்ன செய்ய வேண்டும். சரி, எனக்கு நாம் முன்மொழிய விரும்புகிறேன் பின்வருமாறு படம் வரைய. இப்போது இந்த ஒரு வித்தியாசமாக இருக்கிறது ஒரு உதாரணம் இருந்து படம் ஒரு வித்தியாசமான உரை இருந்து, உண்மையில், அந்த உண்மையில் அளவு 31 ஒரு வரிசை பயன்படுத்தி உள்ளது. இந்த ஆசிரியர் வெறுமனே சரங்களை புல முடிவு நபரின் பெயர்களை அடிப்படையாக, ஆனால் அவர்களின் birthdates அடிப்படையாக. எதுவாக மாதம், அவர்கள் வந்தனர் நீங்கள் ஒரு மாதம் முதல் தேதி பிறந்தார் என்றால் அல்லது ஒரு மாதம் 31, ஆசிரியர் என்று மதிப்பு அடிப்படையில் புல வேண்டும், ஒரு பிட் வெளியே பெயர்கள் பரவியது என வெறும் 26 புள்ளிகள் அனுமதிக்கும் இருக்கலாம் விட. ஒருவேளை அது ஒரு சிறிய மேலும் சீருடையில் தான் அகரவரிசை எழுத்துக்கள் உடன் சென்று விட, ஏனெனில் நிச்சயமாக அநேகமாக இல்லை பெயர்கள் உலகில் மேலும் மக்கள் நிச்சயமாக விட ஒரு என்று தொடக்கத்தில் எழுத்துக்களை வேறு சில கடிதங்கள். எனவே ஒருவேளை இந்த ஒரு சிறிய உள்ளது மேலும் சீரான, அனுமானித்து ஒரு சீரான விநியோகம் ஒரு மாதம் முழுவதும் குழந்தைகள். ஆனால், நிச்சயமாக, இந்த இன்னும் சரியானதாக இல்லை. வலது? நாம் மோதல்கள் வைக்கிறார்களா. இந்த பல மக்கள் தரவு கட்டமைப்பு இன்னும் உள்ளது குறைந்தது அதே பிறந்ததேதி கொண்ட நீங்கள் மாதம் எதுவாக இருக்கிறீர்கள். ஆனால் ஆசிரியர் என்ன செய்துள்ளார்? நாம் ஒரு வரிசை போல், அது தெரிகிறது செங்குத்தாக வரையப்பட்ட இடது புறத்தில், ஆனால் அது வெறும் ஒரு கலைஞரின் கடத்தல் தான். அது ஒரு விஷயமே இல்லை என்ன திசையில் நீங்கள் ஒரு வரிசை வரைய, அது இன்னும் ஒரு வரிசை தான். இந்த வெளிப்படையாக ஒரு வரிசை என்ன? பார்வையாளர்கள்: இணைப்புப் பட்டியல். டேவிட் MALAN: ஆமாம். அது ஒரு தெரிகிறது இணைக்கப்பட்ட பட்டியலில் வரிசை. எனவே மீண்டும், அப்படி இந்த புள்ளி இப்போது இந்த தரவு கட்டமைப்புகள் பயன்படுத்தி மேலும் பொருட்கள் போன்ற சுவாரஸ்யமான தீர்வுகளை, நீங்கள் முற்றிலும் ஒரு எடுக்க முடியும் அடிப்படை, ஒரு வரிசை போல், பின்னர் மேலும் ஏதாவது எடுத்து ஒரு இணைக்கப்பட்ட பட்டியலில் போல சுவாரஸ்யமான மற்றும் கூட ஒரு கூட அவற்றை இணைக்க மேலும் சுவாரஸ்யமான தரவு கட்டமைப்பு. உண்மையில், இந்த கூட என்று ஒரு ஹாஷ் அட்டவணை என்று, அதன்படி வரிசை உண்மையில் ஹாஷ் அட்டவணை, ஆனால் அந்த ஹாஷ் அட்டவணை உள்ளது சங்கிலிகள், அதனால், பேச என்று வளர முடியும் அல்லது அடிப்படையில் குறையுங்கள் உறுப்புகள் எண்ணிக்கை நீங்கள் நுழைக்க வேண்டும். இப்போது, அதன்படி, என்ன தான் இப்போது நேரம் இயங்கும்? நான் யாரோ செருக விரும்பினால் அக்டோபர் 31 யாருடைய பிறந்தநாள் எங்கே அவர் செல்ல வேண்டும்? அனைத்து சரியான. அது 31 என்கிறார் அங்கு மிகவும் கீழே. அந்த சரியான நேரம். அந்த நிலையான நேரம் இருந்தது. ஆனால் நாம் வேறு யாரோ என்ன கண்டால் யாருடைய பிறந்த நாள், நாம் பார்ப்போம் உள்ளது, அக்டோபர், நவம்பர், டிசம்பர் 31? எங்கே அவர் செல்கிறோம்? அதே விஷயம். என்றாலும் இரண்டு படி. அது என்றாலும் நிலையான தான்? அனைத்து சரியான. இந்த நேரத்தில் அது உள்ளது. ஆனால் பொது வழக்கில், நாம் சேர்க்க மேலும் மக்கள், சாத்தியக்கூறு, நாங்கள் போகிறோம் மேலும் மோதல்கள் பெற. இப்போது இந்த ஒரு சிறிய உள்ளது சிறந்த தொழில்நுட்ப ஏனெனில் இப்போது என் சங்கிலிகள் இருக்க முடியும் மோசமான எவ்வளவு காலம்? நான் இந்த மேலும் ஒரு n மக்கள் நுழைக்க என்றால் சிக்கலான தரவு கட்டமைப்பு, n மக்கள், மோசமான நிலையில் அதை சரி n இருக்க போகிறது. ஏன்? பார்வையாளர்கள்: ஏனெனில் என்றால் எல்லோருக்கும் அதே பிறந்தநாள், அவர்கள் ஒரு வரி இருக்க போகிறோம். டேவிட் MALAN: பெர்பெக்ட். அது, ஒரு சிறிய திட்டமிடப்பட்டது இருக்கலாம் ஆனால் உண்மையிலேயே மிக மோசமான நிலையில், அனைவரும் அதே பிறந்தநாள் என்றால், நீங்கள் வேண்டும் உள்ளீடுகள் கொடுக்கப்பட்ட, நீங்கள் ஒரு வேண்டும் போகிறோம் பெருமளவில் நீண்ட சங்கிலி. எனவே, நீங்கள் அது ஒரு அழைக்க முடியும் அட்டவணை புல, ஆனால் உண்மையில் அது தான் வெறும் ஒரு பாரிய இணைக்கப்பட்ட பட்டியலில் வீணாகி இடத்தை ஒரு முழு நிறைய. ஆனால் பொதுவாக, நாம் என்று நினைத்து இருந்தால் குறைந்தது பிறந்த நாள் uniform-- இருந்தால் மற்றும் அது அநேகமாக உள்ளது. நான் என்று செய்கிறேன். ஆனால் நாம் நினைத்து இருந்தால், ஐந்து விவாதம் பொருட்டு அவர்கள், பின்னர் கோட்பாடு, என்றால் என்று இந்த செங்குத்து பிரதிநிதித்துவம் உள்ளது வரிசை, நன்றாக பின்னர் வட்டம் நீங்கள் இருக்கிறீர்கள் இருந்தால், உங்களுக்கு தெரியும் என்று சங்கிலிகள் போகிறது, கிட்டத்தட்ட அதே நீளம் எங்கே ஒவ்வொரு இந்த மாதம் ஒரு நாள் பிரதிபலிக்கிறது. மாதம் 31 நாட்கள் என்றால் இப்போது, உண்மையில் என் இயங்கும் நேரம் பொருள் 31 N பெரிய ஓ, இது நேரியல் விட உணர்கிறது. ஆனால் ஒன்று என்ன இருந்தது எங்கள் கடமைகள் வாரங்களுக்கு ஒரு ஜோடி முன்பு அது வெளிப்படுத்தும் வரும் போதெல்லாம் ஒரு வழிமுறையின் இயங்கும் நேரம்? தான் மட்டுமே உயர் ஆர்டர் கால பாருங்கள். வலது? 31 நிச்சயம் பயனுள்ளதாக இருக்கும். ஆனால் இந்த இன்னும் n பெரிய ஓ. ஆனால் கருப்பொருள்கள் ஒன்று பிரச்சினை ஐந்து அமைத்தது போகிறீர்கள் முற்றிலும் என்று ஒப்பு, தொலைத்தொடுகோட்டு, கோட்பாட்டளவில் இந்த தரவு கட்டமைப்பு வெறும் விட சிறந்தது ஒரு மகத்தான இணைக்கப்பட்ட பட்டியலில். உண்மையில், மோசமான வழக்கில், இந்த ஹாஷ் அட்டவணை என்று சென்று பொறுப்பேற்று இருக்கலாம். ஆனால் நிஜ உலகில், எங்களுக்கு மனிதர்கள் சொந்த மேக்ஸின் அல்லது பிசிக்கள் அல்லது என்ன என்று மற்றும் உண்மையான உலக இயங்கும் உண்மையான உலக தரவு மென்பொருள், இது வழிமுறை நீங்கள் விரும்பினால் போகிறது? இறுதியில் வழிமுறைகளை அல்லது எடுக்கும் என்று ஒன்று n 31 படிகள் வகுக்க எடுக்கும் என்று ஒன்று தரவு சில துண்டு கண்டுபிடிக்க அல்லது சில விவரங்களுக்கு பார்க்க? நான், முற்றிலும் 31 செய்கிறது அர்த்தம் உண்மையான உலகில் ஒரு வித்தியாசத்தை. அது 31 மடங்கு வேகமாக இருக்கும். நாம் மனிதர்கள் நிச்சயமாக இருந்தால் என்று பாராட்ட போகிறோம். எனவே இரட்டை உணர அங்கு உண்மையில் இடையே கோட்பாட்டளவில் விஷயங்களை பற்றி பேசி நிச்சயமாக மற்றும் தொலைத்தொடுகோட்டு இது நாம் பார்த்தேனே மதிப்பு உள்ளது, ஆனால் நிஜ உலகில், நீங்கள் செய்யும் பற்றி கவலை என்றால் பொது உள்ளீடுகள் மனித சந்தோஷமாக, நீங்கள் நன்றாக ஏற்க வேண்டும் ஆம், இந்த லீனியர், என்ற உண்மையை, ஆனால் அது 31 மடங்கு வேகமாக தான் விட நேரியல் இருக்கலாம். மற்றும் இன்னும் சிறப்பாக, நாம் வெறும் வேண்டும் ஒரு பிறந்ததேதி போன்ற தன்னிச்சையான அல்லது ஏதாவது செய்ய, நாம் ஒரு சிறிய கழிக்க முடியும் அதிக நேரம் மற்றும் புத்திசாலித்தனம் மற்றும் நாம் செய்ய வேண்டும் என்ன பற்றி யோசிக்க, கொடுக்கப்பட்ட ஒரு நபரின் பெயர் மற்றும் ஒருவேளை அவர்களின் பிறந்ததேதி அந்த இணைக்க பொருட்கள் ஏதாவது கண்டுபிடிக்க என்று உண்மையிலேயே மேலும் ஆகிறது சீருடையில் மற்றும் குறைவான jaggy, எனவே இந்த படத்தை விட பேச தற்போது அது முடியும் என்று அறிவுறுத்துகிறது. எப்படி நாம் குறியீடு இந்த செயல்படுத்த முடியும்? சரி, எனக்கு நாம் முன்மொழிய விரும்புகிறேன் வெறும் நமக்கு சில தொடரியல் கடன் இதுவரை ஒரு ஜோடி முறை பயன்படுத்தப்படும். நான் வரையறுக்க போகிறேன் ஒரு முனை, இது மீண்டும் சில ஒரு பொதுவான சொல்லாக இருக்கிறது சில தரவு கட்டமைப்பு கொள்கலன். நான் என்று முன்மொழிய போகிறேன் ஒரு சரம் அங்கு சென்று. ஆனால் நாம் எடுத்து தொடங்க போகிறோம் இப்போது ஆஃப் சக்கரங்கள் பயிற்சி அந்த. இல்லை மேலும் CS50 நூலகம் உண்மையில், நீங்கள் வேண்டும் மட்டுமே உங்கள் இறுதி அதை பயன்படுத்த இது நன்றாக உள்ளது திட்டம், ஆனால் இப்போது நாம் மீண்டும் இழுக்க போகிறோம் திரை மற்றும் அது வெறும் ஒரு எரிப்பதை நட்சத்திரம் தான் சொல்ல. சொல் எனவே இருக்க போகிறது கேள்வி நபரின் பெயர். இப்போது நான் ஒரு இணைப்பை வேண்டும் இங்கே அடுத்த முனை இந்த பிரதிநிதித்துவம் அதனால் முனைகளில் ஒவ்வொரு சங்கிலி, திறன், ஒரு இணைக்கப்பட்ட பட்டியலில். இப்போது எப்படி நான் அறிவிக்க செய்கிறது ஹாஷ் அட்டவணை தன்னை? நான் எப்படி இந்த முழு அமைப்பு அறிவிக்க? சரி, உண்மையில், நான் ஒரு சுட்டிக்காட்டி பயன்படுத்தப்படுகிறது போன்ற ஒரு பட்டியலில் தான் முதல் உறுப்பு முன், இதேபோல் நான் சொல்ல நான் சுட்டிகள் ஒரு கொத்து வேண்டும் இந்த முழு ஹாஷ் அட்டவணை செயல்படுத்த. நான் ஒரு வரிசை வேண்டும் போகிறேன் ஹாஷ் அட்டவணை என்று அட்டவணை. அது அளவு திறன் இருக்க போகிறது. அது பொருத்த முடியும் எத்தனை சக்திகள் தான். இந்த நிலையில், அந்த உறுப்புகள் ஒவ்வொன்றும் வரிசை ஒரு முனை நட்சத்திரம் இருக்க போகிறது. ஏன்? சரி, இந்த படம் ஒன்றுக்கு, நான் என்ன இருக்கிறேன் ஹாஷ் அட்டவணை செயல்படுத்தி திறமையுடன் வெறும் ஆரம்பம் தான் நாம் செங்குத்தாக வரையப்பட்ட அந்த இந்த வரிசை, யாருடைய சதுரங்கள் ஒவ்வொரு ஒரு சுட்டிக்காட்டி பிரதிபலிக்கிறது. தான் என்று குறைப்புக்கள் வேண்டும் என்று அவர்கள் மூலம் வெறும் வெற்று இருக்கும். மற்றும் தான் என்று இல்லை வலது போகிறது அம்புகள் உண்மையான முனைகளில் உண்மையான சுட்டிகள் இருந்தால், ஒரு இணைக்கப்பட்ட பட்டியலில் ஆரம்பத்தில் ஆகவே. எனவே இங்கே, பின்னர், எப்படி நாம் வல்லமை உள்ளது ஒரு ஹாஷ் அட்டவணை செயல்படுத்த என்று தனி பிணைப்பு செயல்படுத்துகிறது. இப்போது நாம் சிறப்பாக செய்ய முடியும்? அனைத்து சரியான நான் கடந்த முறை உறுதியளித்த நாம் தொடர்ந்து சாதிக்க முடியும். நான் வகையான நீங்கள் கொடுத்தேன் இங்கே நிலையான நேரம், ஆனால் பின்னர் உண்மையில் கூறினார் நிலையான நேரம் அது இன்னும் ஏனெனில் மொத்த சார்ந்து உறுப்புகள் எண்ணிக்கை நீங்கள் ஒரு உள்ளிடல் தரவு கட்டமைப்பு. ஆனால் நாம் இதை நினைக்கிறேன். என்னை இங்கே மேல் திரையில் திரும்பி செல்லலாம். , என்னை மேலும் இங்கே இந்த வரை திட்டம் தெளிவாக நாம் திரை, மற்றும், நான் இதை செய்தேன் என்று நினைக்கிறேன். நான் பெயர் நுழைக்க வேண்டும் என்றால் Daven என் தரவு கட்டமைப்பு. எனவே நான் ஒரு சரம் நுழைக்க வேண்டும் தரவு கட்டமைப்பு Daven. என்ன நான் ஒரு பயன்படுத்த வேண்டாம் என்றால் அட்டவணை புல, ஆனால் நான் பயன்படுத்த மேலும் என்று ஏதாவது மரம் போன்ற ஒரு குடும்பம் மரம், எங்கே போன்ற நீங்கள் சில ரூட் வேண்டும் மேல் மற்றும் பின்னர் முனைகள் மற்றும் இலைகள் என்று கீழ்நோக்கி மற்றும் வெளிப்புறமாக செல்ல. , பிறகு அது நான் நினைக்கிறேன் Daven செருக வேண்டும் தற்போது ஒரு வெற்று பட்டியலில் தான் என்ன ஒரு. நான் பின்வரும் செய்ய போகிறேன்: நான் இந்த குடும்பத்தில் ஒரு முனை உருவாக்க போகிறது மரம் போன்ற தரவு கட்டமைப்பு தெரிகிறது என்று ஒரு சிறிய இந்த போன்ற ஒவ்வொன்றும் செவ்வகங்கள், தான் சொல்கிறேன் அது இப்போது 26 உறுப்புகள். மற்றும் செல்கள் ஒவ்வொரு இந்த வரிசையில் நடக்கிறது ஒரு எழுத்துக்கள் கடிதம் பிரதிநிதித்துவம். குறிப்பாக, நான் சிகிச்சை போகிறேன் இந்த, ஒரு, பி, சி, பின்னர் டி இங்கே இந்த ஒரு. எனவே இந்த திறம்பட போகிறது கடிதம் டி பிரதிநிதித்துவம் ஆனால் Daven நாட்டின் அனைத்து நுழைக்க நான் ஒரு பிட் இன்னும் செய்ய வேண்டும் பெயரிட. எனவே நான் முதல் பேச, ஹாஷ் போகிறேன். நான் முதல் எழுத்தை பார்க்க போகிறேன் இல் Daven வெளிப்படையாக ஒரு டி இது, மற்றும் நான் ஒதுக்க போகிறேன் தெரிகிறது என்று ஒரு முனை போன்ற பெரிய ஒரு பெரிய செவ்வகம் இதை முழு எழுத்துக்களை பொருந்தும் போதுமான. இப்போது டி செய்யப்படுகிறது. இப்போது ஏ டி ஒரு V-ஈ-என் குறிக்கோள் ஆகும். எனவே இப்போது நான் செய்ய போகிறேன் என்ன இந்த உள்ளது. விரைவில் நான் டி அறிவிப்பு தொடங்கியது அங்கு எந்த சுட்டிக்காட்டி இருக்கிறது. அது, நேரத்தில் குப்பை மதிப்புகள் தான் அல்லது நான் வெற்று அது துவக்க வேண்டும். ஆனால் என்னை கொண்டு போகும் அனுமதிக்க ஒரு மரம் கட்டி இந்த யோசனை. என்னை இந்த மற்றொரு ஒன்று ஒதுக்க அனுமதி அது 26 கூறுகள் உள்ளன என்று முனைகளில். நீங்கள் என்ன தெரியுமா? இந்த நினைவகத்தில் ஒரு முனை என்றால் என்று நான் ஒரு struct பயன்படுத்தி, malloc உடன் உருவாக்கப்பட்ட நாம் விரைவில் காண்பீர்கள், நான் இதை செய்ய போகிறேன் நான் இருந்து ஒரு அம்புக்குறி வரைய போகிறேன் கீழே டி பிரதிநிதித்துவம் என்று விஷயம் இந்த புதிய முனை. மற்றும், முதல் அடுத்த இப்போது Daven பெயரில் கடிதம், V-- டி-A V-- நான் போக போகிறேன் மற்றும் இது போன்ற மற்றொரு முனை, அதன்படி, இங்கே வி உறுப்புகள், நாம் உதாரணமாக அச்சச்சோ ஐந்து வரைய வேண்டும். நாம் அங்கு வரைய. அது இங்கே போக நடக்கிறது. பின்னர் நாம் போகிறோம் இந்த வி கருதுகின்றனர் பின்னர் கீழே இங்கே நாம் குறியீட்டு போகிறோம் கீழே வி இருந்து நாம் ஈ பரிசீலிக்க வேண்டும் என்ன ஒரு பின்னர் இங்கிருந்து நாம் போகிறோம் இங்கே இந்த முனைகளில் ஒன்றாக வேண்டும் போக. இப்போது நாம் பதில் ஒரு கேள்வி உள்ளது. நான் என்பதை எப்படியோ வேண்டும் நாம் சரம் Daven முடிவில் இருக்கிறோம். எனவே நான் அதை பூஜ்ய விடலாம். ஆனால் நாம் Daven ன் என்ன வேண்டும் என்றால் மேலும் முழு பெயர், இது நாம், டேவன்போர்ட் சொன்னது போல, உள்ளது? எனவே Daven என்ன என்றால் உண்மையில் ஒரு சரத்தை, ஒரு நீண்ட சரம் ஒரு முன்னொட்டு? நாம் நிரந்தரமாக முடியாது எதுவும் போகிறது என்று ஏனெனில் நாம் முடிந்தால், அங்கு செல்ல டேவன்போர்ட் போன்ற ஒரு சொல் நுழைக்க ஒருபோதும் இந்த தரவு அமைப்பு ஒரு எனவே நாம் என்ன செய்ய முடியும் பதிலாக உள்ளது இந்த உறுப்புகள் ஒவ்வொன்றும் சிகிச்சை என ஒருவேளை இரண்டு கொண்ட அவர்களை உள்ளே கூறுகள். ஒன்று, உண்மையில், ஒரு சுட்டிக்காட்டி உள்ளது என நான் செய்து கொண்டிருக்கிறேன். இந்த பெட்டிகள் ஒவ்வொரு எனவே ஒரு செல் உள்ளது. ஆனால் என்ன என்றால் மேல் one-- கீழே ஒருவரின் ஏனெனில், பூஜ்ய போகிறது இன்னும் எந்த டேவன்போர்ட் உள்ளது. என்ன என்றால் மேல் ஒன்று சில சிறப்பு மதிப்பு? அது ஒரு சிறிய இருக்க போகிறது அது இந்த அளவு மிகவும் சிரமமானதாகும். ஆனால் அது வெறும் ஒரு காசோலை குறி தான் நினைக்கிறேன். சரிபார்க்கவும். டி-ஒரு V-ஈ-N சரம் இந்த தரவு கட்டமைப்பில். இதற்கிடையில், நான் இன்னும் இடம் இருந்தது இங்கே, நான், பி ஓ-ஆர் டி செய்ய முடியும் மற்றும் நான் முனை காசோலை வைக்க முடியும் மிகவும் இறுதியில் கடிதம் டி உள்ளது. எனவே இந்த ஒரு மகத்தான உள்ளது சிக்கலான காணப்படும் தரவு கட்டமைப்பு. என் கையெழுத்து நிச்சயமாக உதவும். ஆனால் நான் ஏதாவது சேர்க்க விரும்பினால் வேறு, நாம் என்ன செய்ய வேண்டும் என்பதை கருத்தில். நாம் டேவிட் வைக்க வேண்டும் என்றால், நாம், அதே தர்க்கம், டி-A வி பின்பற்ற விரும்புகிறேன் ஆனால் இப்போது நான் அடுத்த சுட்டிக்காட்ட வேண்டும் உறுப்பு இல்லை E இலிருந்து, ஆனால் நான் இருந்து டி எனவே இருக்க நடக்கிறது இந்த மரத்தில் மேலும் முனைகளில். நாம் மேலும் அழைப்பு malloc வேண்டும் போகிறோம். ஆனால் நான் ஒரு செய்ய வேண்டும் இந்த படம் முற்றிலும் குழப்பம். எனவே அதற்கு பதிலாக ஒரு பார்போம் என்று-முன் முறைப்படுத்தலாம் dot இல்லை இப்படி, டாட், புள்ளிகள், ஆனால் மட்டும் சுருக்கமாக வரிசைகள். ஆனால் முனைகளில் ஒவ்வொரு இங்கே இந்த மரம் வரை அதே விஷயம் பிரதிபலிக்கிறது ஒரு வரிசை அளவு 26 ரே. அல்லது நாம் இருக்க வேண்டும் என்றால் உண்மையில் சரியான இப்போது, என்ன ஒருவரின் பெயர் என என்றால் ஒரு மேற்கோளைச், நாம் ஒவ்வொரு முனை உண்மையில் உள்ளது என்று கருதி அது 27 குறியீடுகளும், இல்லை வெறும் 26 போன்ற. எனவே இந்த இப்போது ஒரு தரவு போகிறது அமைப்பு ஒரு trie-- டி-ஆர் நான்-மின் என்று. கூறப்படும் இது ஒரு trie ஒரு மரம் வரலாற்று ஒரு புத்திசாலி பெயர் என்று உகந்ததாக மீட்பு, இது நிச்சயமாக, அது trie தான் ஒரு நான்-ஈ எழுத்துக்கூட்டப்பட்டுள்ளதை. ஆனால் அந்த trie இங்கு வரலாறு உள்ளது. எனவே ஒரு trie இந்த மரம் போன்ற தரவு ஒரு குடும்பம் மரம் போன்ற அமைப்பு என்று இறுதியில் என்று போல செயல்படும். மற்றும் இங்கே ஒரு வெறும் மற்றொரு உதாரணம் ஆகும் மற்ற மக்கள் பெயர்கள் மொத்தமாக. ஆனால் இப்போது கேள்வி கையில் இல்லை என்ன ஆகிறது நாம் விவாதிக்கக்கூடிய ஒரு மேலும் அறிமுகப்படுத்தி பெற்றோம் சிக்கலான தரவு கட்டமைப்பு, மற்றும் ஒரு, வெளிப்படையாக, என்று நினைவு நிறைய பயன்படுத்தும். , ஏனெனில் கூட நேரத்தில், நான் மட்டும் இருக்கிறேன் டி 'கள் சுட்டிக்காட்டி பயன்படுத்தி மற்றும் ஏ வி மற்றும் ES Ns, மற்றும் நான் நினைவகம் நிறைய ஒரு கர்மம் வீணடிக்காதீர்கள். ஆனால் நான் ஒரு வளம் அங்கு செலவிட நான் மீண்டும் மற்றொரு பயன் முனைகின்றன. , நான் இன்னும் வெளி செலவு செய்கிறேன் என்றால் எனவே ஒருவேளை நம்பிக்கை என்ன? நான் என்ன குறைந்த செலவு என்று? பார்வையாளர்கள்: குறைந்த நேரத்தில். டேவிட் MALAN: நேரம். இப்போது ஏன் என்று இருக்கும்? சரி, செருகும் என்ன ஆகிறது நேரம், இப்போது பெரிய ஓ அடிப்படையில், Daven போன்ற ஒரு பெயர் அல்லது டேவன்போர்ட் அல்லது டேவிட்? சரி, Daven ஐந்து படிகள் இருந்தது. டேவன்போர்ட் ஒன்பது படிகள் இருக்கும், எனவே அது ஒரு சில அடிகள் இருக்கும். டேவிட் அதே ஐந்து படிகள் இருக்கும். எனவே அந்த கான்கிரீட் இருந்தால் எண்கள், ஆனால் நிச்சயமாக இல்லை கட்டுப்படுத்துகிறது ஒரு மேல் ஒருவரின் பெயர் நீளம். உண்மையில், பிரச்சினை உள்ள ஐந்து விவரக்குறிப்பு செட், நாங்கள் முன்மொழிய போகிறோம் அது ஒன்று தான் என்று என்று 40-சில-ஒற்றைப்படை எழுத்துக்கள் தான். தத்ரூபமாக, எந்த ஒரு ஒரு எண்ணற்ற நீண்ட பெயர், சொல்ல இது என்று ஒரு நீளம் பெயரை அல்லது ஒரு சரம் நீளம் நாம் வல்லமை மாநில சில வேண்டும் அமைப்பு விவாதிக்கக்கூடிய என்ன? அது நிலையான தான். வலது? அது போன்ற ஒரு பெரிய நிலையான இருக்கலாம் 40-ஏதாவது, ஆனால் அதை தொடர்ந்து உள்ளது. எத்தனை எந்த சார்புநிலை கொண்டிருக்கிறது மற்ற பெயர்கள் இந்த தரவு கட்டமைப்பில் இருந்தால். வேறுவிதமாகக் கூறினால், நான் என்றால் இப்போது நுழைக்க வேண்டும் கால்டன் அல்லது கேப்ரியல் அல்லது ராப் அல்லது, Zamyla அல்லது அலிசன் அல்லது பெலிண்டா அல்லது வேறு பெயர்கள் இந்த தரவு ஒரு ஊழியர்கள் அமைப்பு, இயங்கும் நேரம் ஆகிறது வேறு பெயர்கள் சேர்க்கைக்கு அனைத்து பாதிக்கப்படும் இருக்க போகிறது எத்தனை மற்ற உறுப்புகள் உள்ளன ஏற்கனவே தரவு கட்டமைப்பில்? அது தான். வலது? நாம் திறம்பட பயன்படுத்தி ஏனெனில் இந்த பல அடுக்கு ஹாஷ் அட்டவணை. மற்றும் இயங்கும் நேரம் இந்த நடவடிக்கைகளில் எந்த எண்ணிக்கை சார்ந்து இருக்கக்கூடாது தரவு கட்டமைப்பு உள்ளன கூறுகள் அல்லது இறுதியில் நடக்கிறது தரவு கட்டமைப்பு இருக்க, ஆனால் என்ன குறிப்பாக நீளம்? இருப்பது சரம் செருகப்பட்டு ஏற்படுத்தும் இந்த தொலைத்தொடுகோட்டு மாறா ஒரு நேர பெரிய ஓ. மற்றும் வெளிப்படையாக, வெறும் உண்மையான உலக, இந்த Daven பெயர் எடுக்கும் சேர்க்கைக்கு பொருள் ஐந்து படிகள், அல்லது டேவன்போர்ட் ஒன்பது போன்ற படிகள், அல்லது டேவிட் ஐந்து படிகள். அந்த அழகான தை சிறிய இயங்கும் முறை தான். மேலும், உண்மையில், என்று ஒரு மிக தான் நல்ல விஷயம், குறிப்பாக போது அது மொத்த சார்ந்து தான் அங்கு உறுப்புகள் எண்ணிக்கை. எனவே நாம் இந்த செயல்படுத்த எப்படி குறியீடு உள்ள அமைப்பு வகையான? அது இன்னும் கொஞ்சம் சிக்கலான, ஆனால் இன்னும் அது தான் வெறும் ஒரு விண்ணப்பம் அடிப்படை கட்டுமான தொகுதிகள். நான் மறுவரையறை போகிறேன் எங்களுக்கு முனை பின்வருமாறு: bool word-- என்று இந்த எதையும் என்று. ஆனால், bool பிரதிபலிக்கிறது என்ன நான் ஒரு சோதனை குறி என ஈர்த்தது. ஆமாம். இந்த ஒரு சரம் இறுதியில் உள்ளது இந்த தரவு கட்டமைப்பில். மற்றும், நிச்சயமாக, முனை நட்சத்திரம் குழந்தைகள் அங்கு குறிப்பிடும். மேலும், உண்மையில், வெறும் விரும்புகிறேன் ஒரு குடும்பம் மரம், நீங்கள் முனைகளில் கருத்தில் கொள்ள வேண்டும் என்று தொங்கும் சில பெற்றோர் கீழே உறுப்பு குழந்தைகள் இருக்க. அதனால் குழந்தைகள் போகிறது 27 ஒரு வரிசை, 27 ஒன்றாக இருக்க வெறும் மேற்கோளைச் இருப்பது. நாம் தீர்த்துக்கொள்ள போகிறது சிறப்பு வழக்கு என்று. எனவே நீங்கள் குறிப்பிட்ட இருக்க முடியும் apostrophes பெயர்கள். ஒருவேளை கூட நடுக்கோட்டை வேண்டும் அங்கு செல்ல, ஆனால் நீங்கள் ப தொகுப்பு 5 நாம் மட்டும் பராமரிப்பு பார்க்க கடிதங்கள் மற்றும் apostrophes பற்றி. பின்னர் எப்படி நீங்கள் பிரதிநிதித்துவம் செய்கிறது தரவு அமைப்பு தன்னை? எப்படி நீங்கள் வேர் பிரதிநிதித்துவம் இல்லை இந்த trie, அதனால் பேச? சரி, நீங்கள், ஒரு இணைக்கப்பட்ட பட்டியலில் விரும்புகிறீர்கள் முதல் உறுப்பு ஒரு சுட்டிக்காட்டி வேண்டும். ஒரு trie நீங்கள் ஒரு வேண்டும் இந்த trie வேர் சுட்டிக்காட்டி. மற்றும் அங்கு இருந்து நீங்கள் புல முடியும் உங்கள் வழியில் கீழே ஆழமான கட்டமைப்பில் ஒவ்வொரு மற்ற முனை. எனவே வெறுமனே இந்த முடியும் உடன் நாம் என்று struct பிரதிநிதித்துவம். இப்போது, ஓ கேள்வி Meanwhile--. பார்வையாளர்கள்: bool வார்த்தை என்ன? டேவிட் MALAN: bool வார்த்தை இந்த சி அவதாரம் நான் விவரித்தார் என்ன இங்கே, போது இந்த பெட்டியில் நான் ஒவ்வொரு பிளக்கும் தொடங்கினேன் இரண்டு துண்டுகளாக அணியின் உறுப்புகள். ஒரு அடுத்த முனை ஒரு சுட்டிக்காட்டி இருக்கிறது. மற்ற இருக்க வேண்டும் ஒரு காசோலை பெட்டியில் போன்ற ஏதாவது ஒரு இல்லை, ஆமாம், சொல்ல இங்கே முடிவடைகிறது Daven சொல், , நாம் விரும்பவில்லை, ஏனென்றால் கணம், டேவ் மணிக்கு. டேவ் ஒரு போகிறது கூட நியாயமான வார்த்தை, அவர் trie இல் தான் இன்னும். மற்றும் டி ஒரு சொல் உள்ளது. மற்றும் டி-A சொல் அல்லது ஒரு பெயர் உள்ளது. காசோலை குறி எனவே மட்டும் நீங்கள் ஒருமுறை குறிக்கிறது இந்த முனை அடிக்க எழுத்துக்கள் முந்தைய பாதை நீங்கள் சேர்க்கப்பட்டது என்று உண்மையில் ஒரு சரம். அதனால் அனைத்து bool தான் எங்களுக்கு அங்கு செய்து. முயற்சிகளின் மீது வேறு ஏதேனும் கேள்விகள்? ஆமாம். பார்வையாளர்கள்: ஒன்றுடன் என்ன? என்ன நீங்கள் ஒரு டேவ் மற்றும் ஒரு Daven வேண்டும் என்றால்? டேவிட் MALAN: பெர்பெக்ட். என்ன நீங்கள் ஒரு டேவ் மற்றும் ஒரு Daven வேண்டும் என்றால்? நாம் நுழைக்க என்றால், ஒரு புனைப்பெயர் சொல்கிறது David-- Dave-- டி ஒரு V-ஈ? இந்த உண்மையில் சூப்பர் எளிது. எனவே நாம் மட்டும் நான்கு நடவடிக்கைகளை எடுக்க போகிறோம். டி-ஒரு V-ஈ. நான் என்ன வேண்டும் நான் அந்த நான்காவது முனை ஹிட் முறை செய்ய? வெறும் சரிபார்க்க நடக்கிறது. நாம் ஏற்கனவே செல்ல நல்ல இருக்கும். முடிந்தது. நான்கு படிகள். தொலைத்தொடுகோட்டு மாறா நேரம். இப்போது நாம் அந்த இருவரும் டேவ் சுட்டிக்காட்டினார் மற்றும் Daven கட்டமைப்பில் சரங்களை. எனவே ஒரு பிரச்சினை அல்ல. எப்படி முன்னிலையில் கவனிக்க Daven அதை செய்ய எந்த நேரம் அல்லது குறைவாக எடுத்து நேரம் டேவ் மற்றும் மாறாகவும். எனவே நாம் இப்போது வேறு என்ன செய்ய முடியும்? நாம் முன் இந்த உருவகம் பயன்படுத்தப்படுகிறது தட்டுக்களில் ஒன்றை பிரதிபலிப்பதாக. ஆனால் அது மாறிவிடும் ஒரு தட்டுக்களும் பற்றிய ஸ்டாக் உண்மையில் மற்றொரு சுருக்க தரவு வெளிப்படுத்துகிறது ஒரு உயர் மட்ட தரவு கட்டமைப்பு வகை இறுதியில் நாள் என்று தான் உள்ளது ஒரு வரிசை அல்லது ஒரு இணைக்கப்பட்ட பட்டியலில் போல மேலும் இவ்வுலகை அல்லது ஏதாவது. ஆனால் அது ஒரு மிகவும் சுவாரசியமாக கருத்துரு கருத்து. இந்த போன்ற ஒரு ஸ்டேக், மாதர் இங்கே தட்டுக்களில், பொதுவாக அழைக்கப்படும் வெறும் ஒரு ஸ்டாக் சி. மற்றும் தரவு கட்டமைப்பு இந்த வகை நீங்கள் இரண்டு operations-- வேண்டும் நீங்கள் ஒன்று என்று தள்ள வேண்டும் ஸ்டாக் ஏதாவது சேர்த்து, மற்றொரு தட்டில் போடுவதை போல ஸ்டேக் மேல் ஆதரிக்க. நீங்கள் அதாவது பின்னர், பாப் மிக உயர்ந்த தட்டில் எடுத்து. ஆனால் ஒரு ஸ்டேக் என்று பற்றிய முக்கிய என்ன அது இந்த ஆர்வம் பண்பு கிடைத்தது. டைனிங் ஹால் ஊழியர்கள் என இருந்தால் அடுத்த உணவை தட்டுக்களில் வரிசைப்படுத்தும், என்ன நடக்கிறது எப்படி மாணவர்கள் பற்றி உண்மை இந்த தரவு கட்டமைப்பு தொடர்பு? பார்வையாளர்கள்: அவர்கள் ஒரு ஆஃப் பாப் போகிறோம். டேவிட் MALAN: அவர்கள் போகிறோம் ஒரு ஆஃப், வட்டம் மேல் பாப். இல்லையெனில் அது வெறும் முட்டாள் மாதிரி கீழே அனைத்து வழி செல்ல. வலது? தரவு கட்டமைப்பு உண்மையில் அனுமதிக்க நீங்கள் குறைந்தது கீழே தட்டில் அடைய எளிதாக. எனவே இந்த ஆர்வம் இல்லை ஒரு ஸ்டேக் சொத்து கடந்த உருப்படி என்று முதல் ஒரு வெளியே போகிறது. மற்றும் கணினி விஞ்ஞானிகள் அழைக்கின்றன இந்த முதல், வெளியே நீடிக்கும் LIFO--. அது உண்மையில் இல்லை சுவாரஸ்யமான பயன்பாடுகள். இது அவசியம் சில போன்ற வெளிப்படையான தான் மற்றவர்கள், ஆனால் அது, உண்மையில், பயனுள்ளதாக இருக்க முடியும் மற்றும் அது, உண்மையில், நடைமுறைப்படுத்தப்பட வேண்டும் வெவ்வேறு வழிகளில் ஒரு ஜோடி. எனவே ஒன்று, மற்றும் உண்மையில், நாம் என்னை என்று ஒரு முழுக்கு இல்லை. அதற்கு பதிலாக இந்த செய்வோம். கிட்டத்தட்ட என்று ஒரு பார்க்கிறேன் அதே கருத்து, ஆனால் அது ஒரு சிறிய இன்னும் அழகாக இருக்கிறது. வலது? நீங்கள் இந்த ரசிகர் சிறுவர்களை ஒரு என்றால் அல்லது உண்மையில் ஆப்பிள் தயாரிப்புகள் பிடிக்கும் என்று பெண்கள் மற்றும் நீங்கள் 3:00 மணிக்கு விழித்தேன் சில கடையில் வரிசையாக மிகவும் சமீபத்திய ஐபோன் பெற, நீங்கள் இந்த போன்ற வரை வரிசைப்படுத்தப்படும். இப்போது ஒரு வரிசையில் மிகவும் திட்டமிட்டு என்ற. இல்லை, ஏனெனில் அது ஒரு வரி தான் அது சில நேர்மை. வலது? நீங்கள் இருக்கிறது என்றால் அது வகையான குடித்தார்கள் ஆப்பிள் ஸ்டோர் மணிக்கு முதல் அங்கு கிடைத்தது ஆனால் நீங்கள் திறம்பட bottommost இருந்தால் தட்டில் பின்னர் ஆப்பிள் ஊழியர்கள் ஏனெனில் கடைசி நபர் பாப் யார் உண்மையில் வரி கிடைத்தது. அடுக்குகள் மற்றும் வரிசைகளில், கூட எனவே செயல்படவில்லை அவர்கள் same-- வகையான இருக்கிறார்கள் அது தான் இந்த சேகரிப்பு வளங்களை தான் அங்கு வளர போகிறது மற்றும் அது இந்த நேர்மை அம்சம், உண்மையான உலகில் குறைந்தது, எங்கே நடவடிக்கைகளை நீங்கள் உடற்பயிற்சி அடிப்படையிலேயே மாறுபட்ட உள்ளன. ஒரு வரிசையில் ஒரு stack-- rather-- வேண்டும் என்றார் இரண்டு நடவடிக்கைகளை: N வரிசை மற்றும் ஈ வரிசை. அல்லது நீங்கள் அவர்களை அழைக்க முடியும் எல்லாம் எந்த எண். ஆனால் நீங்கள் தான் கைப்பற்ற வேண்டும் ஒன்று சேர்க்கும் என்று கருத்து மற்றும் ஒரு இறுதியில் கழிப்பதன். இப்போது பேட்டை அடியில், இரண்டு ஸ்டாக் மற்றும் ஒரு வரிசை எப்படி செயல்படுத்தப்படுகிறது? நாம் குறியீடு போக மாட்டேன் அது ஏனெனில் அதிக அளவில் யோசனை வகையான இன்னும் தெளிவாக இருக்கிறது. நான் என்ன சொல்கிறேன் என்றால், மனிதர்கள் என்ன செய்ய வேண்டும்? நான் ஆப்பிள் முதல் நபர் இருக்கிறேன் என்றால் சேமிக்க மற்றும் இந்த முன் கதவு உள்ளது, நீங்கள் நான் இங்கே நிற்க போகிறேன், தெரியும். மற்றும் அடுத்த நபரின் இங்கே நிற்க போவதில்லை. மற்றும் அடுத்த நபரின் இங்கே நிற்க போவதில்லை. எனவே என்ன தரவு கட்டமைப்பு தன்னை ஒரு வரிசையில் வழங்கியிருக்கிறது? பார்வையாளர்கள்: ஒரு வரிசை. டேவிட் MALAN: சரி, ஒரு வரிசை. நிச்சயமாக. வேறு என்ன? பார்வையாளர்கள்: ஒரு இணைக்கப்பட்ட பட்டியலில். டேவிட் MALAN: ஒரு இணைக்கப்பட்ட நீங்கள் செயல்படுத்த முடியும் பட்டியலிட. மற்றும் ஒரு இணைக்கப்பட்ட பட்டியலில் பின்னர் ஏனெனில் நன்றாக இருக்கிறது பதிலாக அது தன்னிச்சையாக நீண்ட வளர முடியும் சில நிலையான எண் கொண்ட கடை மக்கள். ஆனால் ஒருவேளை ஒரு நிலையான எண் இடங்களில் சட்டப்பூர்வமானது. அவர்கள் மட்டும் 20 போன்ற, ஏனெனில் ஒருவேளை, முதல் நாளில் ஐபோன்கள் அவர்கள் மட்டும் அளவு ஒரு வரிசை வேண்டும் 20 என்று வரிசை, பிரதிநிதித்துவம் நாம் பேசி தொடங்க ஒருமுறை மட்டும் இப்போது சொல்ல இந்த உயர் மட்ட பிரச்சினைகள் பற்றி, நீங்கள் அதை செயல்படுத்த முடியாது வழிகளில் எந்த எண்ணை. மற்றும் ஒருவேளை தான் அங்கே நடக்கிறது விண்வெளி மற்றும் நேரம் ஒரு வர்த்தக இனிய இருக்கும் அல்லது உங்கள் சொந்த குறியீடு சிக்கலான. ஒரு ஸ்டேக் பற்றி என்ன? சரி, ஒரு அடுக்கு, நாம் கூட பார்த்திருக்கிறேன் வெறும் இந்த தட்டுக்களில் இருக்க முடியும். நீங்கள் இந்த ஒரு வரிசை செயல்படுத்த முடியும். ஆனால் சில கட்டத்தில் நீங்கள், ஒரு வரிசை பயன்படுத்தினால் என்ன தட்டுக்களில் நடக்கும் நடக்கிறது நீங்கள் கீழே வைக்க முயற்சி? அனைத்து சரியான. நீங்கள் மட்டும் போகிறோம் எனவே உயர் செல்ல முடியும். நான் அவர்கள் மாதர் நினைக்கிறேன் உண்மையில் அந்த திறப்பு குறைக்கப்பட்டன. எனவே உண்மையில், அது கிட்டத்தட்ட தான் மாதர் பயன்படுத்தி உள்ளது போன்ற நிலையான அளவு ஒரு வரிசை, நீங்கள் மட்டும் முடியும் ஏனெனில் அந்த திறப்பு பல தட்டுக்களில் பொருந்தும் மக்கள் முழங்காலுக்குக் கீழே கீழே சுவர். அதனால் அந்த இருக்கலாம் ஒரு வரிசை இருக்கும் கூறினார், ஆனால் நாம் நிச்சயமாக என்று செயல்படுத்த முடியவில்லை மேலும் பொதுவாக ஒரு இணைக்கப்பட்ட பட்டியலில். சரி, என்ன மற்றொரு தரவு கட்டமைப்பு பற்றி? என்னை இங்கே காட்சி மற்ற ஒன்று மேலே நாம். எப்படி இங்கே இந்த ஒரு பற்றி ஏதாவது? ஏன் அது இல்லை பயனுள்ளதாக இருக்கும் ஒரு trie, போன்ற ஆடம்பரமான அதில் ஏதோ நாம், இந்த மிக பரந்த முனைகளில் இருந்தது இதில் ஒவ்வொரு ஒரு வரிசை உள்ளது? ஆனால் நாம் ஏதாவது மேலும் என்ன செய்கிறோம் என்றால் வெறுமனே, ஒரு பழைய பள்ளி குடும்பம் மரம் போன்ற, யாருடைய இங்கே முனைகளில் ஒவ்வொரு வெறும் ஒரு எண் சேமித்து. மாறாக ஒரு பெயர் அல்லது ஒரு சந்ததி இப்படி ஒரு எண் சேமித்து. சரி, வாசகங்கள் நாம் பயன்படுத்த தரவு கட்டமைப்புகள் இரண்டு முயற்சிகளின் உள்ளன மற்றும் மரங்கள், ஒரு trie, மீண்டும், எங்கே வெறும் அதன் முனைகள் வரிசைகள் ஒன்று, இன்னும் என்ன நீங்கள் போகலாம் வகுப்பு பள்ளி பயன்படுத்த நீங்கள் ஒரு குடும்பம் செய்த போது மரம் இலைகள் மற்றும் வேர் மரம் மற்றும் குழந்தைகள் பெற்றோர் மற்றும் அதின் உடன்பிறப்புகள். நாம் ஒரு மரம் செயல்படுத்த வேண்டும், உதாரணமாக, வெறுமனே இந்த என. ஒரு மரம், அது என்றால் ஒரு முனை, ஒரு ஒரு எண் என்று இந்த வட்டங்களில், அது வேண்டும் ஒரு சுட்டிக்காட்டி, ஆனால் இரண்டு. மற்றும் விரைவில் நீங்கள் சேர்க்க இரண்டாவது சுட்டிக்காட்டி, நீங்கள் உண்மையில் இப்போது வகையான செய்ய முடியும் இரு பரிமாண தரவு நினைவகத்தில் கட்டமைப்புகள். ஒரு இரு பரிமாண போலவே வரிசை, நீங்கள் இரு பரிமாண வகையான வேண்டும் இணைக்கப்பட்ட பட்டியல்கள் ஆனால் தான் என்று ஒரு முறை பின்பற்ற எங்கே எந்த சுழற்சிகள் இருக்கிறது. அது ஒரு உண்மையான ஒரு மரம் தான் இங்கே பின்னர் பாட்டன் பாட்டி வழி சில பெற்றோர்கள் மற்றும் குழந்தைகள் மற்றும் பேரப்பிள்ளைகள் மற்றும் பேரக்குழந்தைகள். மற்றும் முன்னும் பின்னுமாக. ஆனால், இதைபத்தியும் மிகவும் சுத்தமாகவும் என்ன வெறும் குறியீடு ஒரு பிட் நீங்கள் கிண்டல் செய்ய, இருந்து திரும்ப மறுநிகழ்வு கொஞ்ச மீண்டும், அதன்படி நீங்கள் தன்னை அழைக்கும் என்று ஒரு செயல்பாடு எழுத. இந்த ஒரு அழகான வாய்ப்பு உள்ளது ஏதாவது செயல்படுத்த மறுநிகழ்வு போன்ற, ஏனெனில் இந்த கருதுகின்றனர். இந்த ஒரு மரம் உள்ளது. நான் எப்படி ஒரு சிறிய குத வந்துள்ளேன் நான் தெருவில் சென்று முழு வைத்தேன். அதனால் இவ்வளவு அது ஒரு சிறப்பு உள்ளது ஒரு பைனரி தேடல் மரம் பெயர். இப்போது நாம் பைனரி கேட்டிருக்கிறேன் நீங்கள் தேட, ஆனால் முடியும் இந்த விஷயம் பெயர் இருந்து பின்னோக்கி வேலை? நான் எப்படி முறை என்ன இந்த மரம் ஒரு முழு செருகிய? அது தன்னிச்சையான தான். சில முறை இருக்கிறது. ஆமாம். பார்வையாளர்கள்: இடது சிறிய தான். டேவிட் MALAN: ஆமாம். சிறிய இடது உள்ளன. பெரிதாகக் வலது இருக்கும். இத்தகைய ஒரு உண்மை அறிக்கை என்று ஒரு பெற்றோர், அதன் இடது குழந்தை விட அதிகமாக உள்ளது அதன் சரியான குழந்தை விட ஆனால் குறைவான. தனியாக என்று கூட ஒரு உள்ளது சுழல்நிலை வாய்மொழி வரையறை நீங்கள் என்று விண்ணப்பிக்க முடியும் ஏனெனில் ஒவ்வொரு முனை அதே தர்க்கம் மற்றும் அது மட்டும் பாட்டம்ஸ் வெளியே, ஒரு அடிப்படை வழக்கில் நீங்கள் என்றால் சாப்பிடுவேன், போது நீங்கள் ஒரு ஹிட் இலைகள், அதனால், பேச ஒரு விடுப்பு மேலும் குழந்தைகள் உண்டு எங்கே. இப்போது எப்படி நீங்கள் எண் 44 கண்டுபிடிக்க வேண்டும்? நீங்கள், மெசேஜ் ரூட் துவங்க மற்றும் கூறுவேன். 55 எனவே நான் செல்ல விரும்புகிறீர்கள் 44 ஆகும் சரியான அல்லது நான் விட்டு போக வேண்டும்? சரி, வெளிப்படையாக நீங்கள் இடது செல்ல வேண்டும். அதனால் அது தொலைபேசி தான், இரும தேடல் புத்தகம் உதாரணம் மேலும் பொதுவாக. ஆனால் நாம் அதை செயல்படுத்தும் இப்போது இன்னும் கொஞ்சம் மாறும் ஒரு வரிசை அனுமதிக்க வேண்டும் விட. உண்மையில், நீங்கள் பார்க்க விரும்பினால் குறியீடு, முதல் பார்வையில் உறுதி. அது கோடுகள் ஒரு மொத்தமாக தெரிகிறது. ஆனால் அது அழகாக எளிது. நீங்கள் ஒரு செயல்பாட்டை செயல்படுத்த வேண்டும் என்றால் அதன் நோக்கம் வாழ்க்கையில் என்று தேடல் ஒரு மதிப்பு தேட வேண்டும் போன்ற n, ஒரு முழு, மற்றும் நீங்கள் ஒரு சுட்டிக்காட்டி நிறைவேற்றப்பட்டது வேர்கள் முனை ஒரு சுட்டிக்காட்டி, மாறாக, அந்த மரத்தில் இருந்து நீங்கள், எல்லாவற்றையும் அணுக முடியும் எப்படி நேரடியாகவே கவனிக்க நீங்கள் தர்க்கம் செயல்படுத்த முடியும். மரம் பூஜ்ய இருந்தால், வெளிப்படையாக அது அங்கு இல்லை. தான் தவறான திரும்ப அனுமதிக்க. வலது? நீங்கள் அது எதுவும் கையில் என்றால், அங்கு ஒன்றுமில்லை. வேறு N விட குறைவாக, என்றால் இப்போது n அம்பு n-- மரம் அம்பு, நாம் சூப்பர் அறிமுகப்படுத்தப்பட்டது நினைவு சுருக்கமாக மற்ற நாளும், என்று தான் டி-குறிப்பு பொருள் சுட்டிக்காட்டி மற்றும் n என்று துறையில் பாருங்கள். எனவே அது அங்கு சென்று பொருள் n என்று துறையில் பாருங்கள். எனவே n என்றால், நீங்கள் கொடுத்து வருகிறோம் மதிப்பு குறைவாக உள்ளது மரங்கள் முழு மதிப்பை விட, நீங்கள் எங்கே போக வேண்டும்? இடது. எனவே மறுநிகழ்வு கவனிக்க. நான் இல்லை உண்மை returning--. தவறான இல்லை. நான் என்ன பதில் திரும்ப ஒப்படைக்கிறேன் நானே ஒரு அழைப்பு வருகிறது, கடந்து பணிநீக்கம் இது மீண்டும் ஒரு n, ஆனால் இப்போது சற்று வித்தியாசமாக என்ன? நான் எப்படி சிறிய பிரச்சனை செய்யும்? நான் இரண்டாவது கடந்து வாதம், மரம் ரூட், ஆனால் இந்த விஷயத்தில் இடது குழந்தை. எனவே நான் இடது குழந்தை கடந்து நான். இதற்கிடையில் n விட பெரிய, என்றால் நான் தற்போது பார்த்துக்கொண்டிருக்கிறேன் முனை, நான் வலது புறம் தேட. இல்லையென்றால், மரம், பூஜ்ய அல்ல என்றால் மற்றும் உறுப்பு இடது என்றால் மற்றும் அது, வலது தான் வழக்கு பிரமாதமாக என்ன? நாம் உண்மையில் முனை பார்த்த கேள்வி, மற்றும் அதனால் நாம் உண்மையான திரும்ப. எனவே நாம் வெறும் மேற்பரப்பு கீறப்பட்டது இப்போது இந்த தரவு கட்டமைப்புகள் சில. பிரச்சனை ஐந்து அமைக்க நீங்கள் தருகிறேன் இன்னும் இந்த ஆராய, மற்றும் உங்கள் வடிவமைப்பு கொடுக்கப்பட்ட இந்த பற்றி செல்ல எப்படி தேர்வு. நான் முடிவுக்கு விரும்புகிறேன் என்ன வெறும் ஒரு 30 இரண்டாவது டீஸர் உள்ளது அப்பால் அடுத்த வாரம் மற்றும் காத்திருக்கவில்லை என்ன. நாம் அதிர்ஷ்டவசமாக begin-- என நீங்கள் போகலாம் மெதுவாக எங்கள் மாற்றம் think-- சி மற்றும் குறைந்த உலகில் இருந்து நிலை செயல்படுத்த விவரங்கள், ஒரு உலகம் இதில் நாம் எடுக்க முடியும் வேறு யாரோ இறுதியாக என்று வழங்கப்பட்ட இந்த தரவு செயல்படுத்தப்படும் எங்களுக்கு ஐந்து கட்டமைப்புகள், மற்றும் நாம் புரிந்து கொள்ள தொடங்க வேண்டும் உண்மையான உலக செயல்படுத்த பொருள் இணைய அடிப்படையிலான திட்டங்கள் மற்றும் வலைத்தளங்களில் மேலும் பொதுவாக மற்றும் மிகவும் பாதுகாப்பு நாம் மட்டும் தான் அந்த தாக்கங்களை மேற்பரப்பில் கீறி தொடங்கியுள்ளன. இங்கே எங்களுக்கு காத்திருக்கவில்லை என்ன ஆகும் நாட்கள் வர. [மறுஒளிபரப்பு வீடியோ] என்றனர், ஒரு செய்தி வந்தது அவரது சொந்த ஒரு நெறிமுறை. அவர் கொடூரமான ஒரு உலக வந்தது ஃபயர்வால்கள், திசைவிகள் அக்கறையில்லாமலும், மற்றும் ஆபத்துக்களை மரண விட மோசமாக. அவர் வேகமாக தான். அவர் வலுவான தான். அவர் TCP / IP, மற்றும் அவர் உங்கள் முகவரி இருக்கிறது. "நிகர என்ற வாரியர்ஸ்." [END மறுஒளிபரப்பு வீடியோ] டேவிட் MALAN: அடுத்த வாரம் வரும். நாங்கள் உங்களை பின் பார்ப்போம். [மறுஒளிபரப்பு வீடியோ] -அவர் இப்போது, "டீப் எண்ணங்கள்" Daven ஃபர்ண்ஹாம் மூலம். -David எப்போதும் தொடங்குகிறது , விரிவுரைகள் "எல்லாம் சரி." ஏன் இல்லை, "இங்கே தீர்வு இந்த வாரம் சிக்கல் தொகுப்பு "க்கு அல்லது "நாம் ஒரு ஒரு நீங்கள் அனைத்து கொடுத்து?" [சிரித்து] [END மறுஒளிபரப்பு வீடியோ]