DAVID మలన్: అన్ని కుడి. CS50 తిరిగి స్వాగతం. ఈ వారం 8 ప్రారంభంలో ఉంది. మరియు ఆ ప్రాబ్లం సెట్ 5 ముగిసింది గుర్తు ఒక సవాలు కొద్దిగా తో. సో మీరు మీ యొక్క అన్ని కోలుకొని ఊహిస్తూ బోధన సభ్యులు మరియు CA యొక్క ఛాయాచిత్రాలను card.raw ఫైలు లో, మీరు అర్హులు ఇప్పుడు ఆ ప్రజలు అన్ని కనుగొనేందుకు, మరియు ఒక అదృష్ట విజేత ఒక ఇంటికి నడిచే ఈ విషయాలు, లీపు మోషన్ మీరు ఫైనల్లో ఉపయోగించే పరికరం ఉదాహరణకు ప్రాజెక్టులు. ఈ, ప్రతి సంవత్సరం, దారితీస్తుంది creepiness ఒక బిట్. అందువలన నేను నా ఇష్టం ఆలోచన వాటా మీరు మీరు పేర్కొన్నారు కొన్ని ముందుకు వెనుకకు పోయింది చివరి సిబ్బంది జాబితా. ఉదాహరణకు, కేవలం గత రాత్రి, కోట్ కోసం సిబ్బంది నుండి, unquote సభ్యులు, "నేను ఒక విద్యార్థి నాక్ కలిగి నా తలుపు మీద నాతో ఒక ఫోటో తీసుకోవడం. దొంగల, నేను మీరు చెప్పండి. "ప్రారంభం మేము తరలించడం బొత్తిగా వివరణాత్మక మరియు కు, ఒక గంట లేదా తర్వాత, "నేను ఒక కలిగి విద్యార్ధి విభాగం తరువాత నాకు వేచి మరియు అతను మా పేర్లు మరియు ఫోటోలు అన్ని కలిగి కాగితం కొన్ని పత్రాలపై. "అన్ని కుడి. సో ఏర్పాటు, కానీ ఇంకా ఆ గగుర్పాటు. అప్పుడు, "నేను ఈ వారాంతంలో, పట్టణం నుంచి మరియు నేను తిరిగి వచ్చినపుడు, ఒక ఉంది నా బెడ్ రూమ్. "[నవ్వు] DAVID మలన్: సిబ్బంది నుండి తదుపరి కోట్ సభ్యుడు, "ఒక విద్యార్థి వద్ద మా ఇంటికి వచ్చి 4 వద్ద SOMERVILLE ఈ ఉదయం పోస్ట్. "తదుపరి సిబ్బంది, "నేను శాన్ నా హోటల్ వచ్చింది ఫ్రాన్సిస్కో మరియు ఒక విద్యార్ధి కోసం వేచి మూడు DSLRs లాబీకి వద్ద నాకు. " కెమెరా రకం. "నేను, సిబ్బంది ఈ సెమిస్టర్ కూడా కాదు కానీ ఒక విద్యార్థి మా ఇంటికి ఈ విరిగింది మొత్తం విషయం ఉదయం మరియు నమోదు . Google గ్లాస్ తో "తర్వాత చివరగా, "కనీసం 12 మంది ఆత్రంగా ఉన్నాయి నా నుండి వచ్చింది ఉన్నప్పుడు నాకు వేచి నిమ్మ, ఆపై నేను మేల్కొన్నాను. "అన్ని కుడి. సో ఛాయాచిత్రాలను మధ్య, వంటి మీరు గుర్తు, ఈ తోటి మీరు ఎవరు, ఇక్కడ ఉన్నాయి నివసించే మిలో అరటి, వంటి తెలిసిన లారెన్ కార్వాల్హో, మా తల ఫెలో బోధన. మీలో, మిలో, ఇక్కడ అబ్బాయి వచ్చి. మీలో. మీలో. మీరు చూసుకొని, అతను, Google గ్లాస్ వేసుకొని మేము మీరు ఈ అన్ని తర్వాత చూపుతాము. మీరు కోరుకుంటున్నారో చేస్తే ఈ మీలో ఉంది తరువాత అతనితో ఒక ఫోటో తీసుకుని. మీరు చూడండి అవ్వాలనుకుంటే అక్కడ ప్రేక్షకులు వద్ద. OK. మంచి ఫుటేజ్ వార్తలు. బాగా, మిలో అరటి. ఓహ్, అలా లేదు. [నవ్వు] OK. ముందుకు ఉంది ఏమి అప్పుడు ఒక పదం కాబట్టి, ఈ మార్పుని ప్రారంభమవుతుంది ఎందుకంటే, ఈ వారం ప్రత్యేకంగా, ఒక లో సి నుండి కమాండ్ లైన్ PHP పర్యావరణంలో మరియు జావాస్క్రిప్ట్ మరియు SQL మరియు HTML మరియు CSS లో ఒక వెబ్ ఆధారిత వాతావరణంలో, మేము ఉంటాం అన్ని మీకు సన్నద్ధం మరింత పరిజ్ఞానం సంభావ్య చివరి ప్రాజెక్టులు. ఆ చివర్లో, కోర్సు ఒక ఉంది సెమినార్లు కలిగి సంప్రదాయం ఇది ఊహించిన విధంగా జరుగు అంశాలపై ఉంటాయి కోర్సు కు. చాలా ప్రోగ్రామింగ్ మరియు సంబంధించిన అనువర్తనం అభివృద్ధి మొదలగునవి, కానీ తప్పనిసరిగా అన్వేషించబడలేదు కోర్సు యొక్క సొంత సిలబస్. మీరు ఒక ఆసక్తి ఉండవచ్చు కనుక ఈ సంవత్సరం యొక్క సెమినార్లలో లేదా ఎక్కువ, cs50.net/seminar వద్ద నమోదు. పాత సెమినార్లు ఉన్నాయి cs50.net/seminars వద్ద. మరియు ఈ సంవత్సరం ఇప్పటివరకూ రోస్టర్ రూబీ తో అమేజింగ్ వెబ్ Apps ఉన్నాయి ఒక ప్రత్యామ్నాయ ఇది ​​రూబీ, PHP భాష. కంప్యుటేషనల్ లింగ్విస్టిక్స్. ఇది iOS, పరిచయము మరియు ఐఫోన్ కోసం ఉపయోగించబడిన వేదిక ఐప్యాడ్ అభివృద్ధి. జావాస్క్రిప్ట్ వెబ్ Apps కోసం, మేము కవర్ చేస్తాము ఆ, అయితే ఈ సమావేశంలో, మీరు వెళ్తారో వివరాల్లోకి మరింత లోతుగా. మోషన్ లీప్, కాబట్టి మేము నిజానికి కొన్ని ఉంటుంది లీప్ మోషన్ నుండి మా ఫ్రెండ్స్, సంస్థ, చేరగలరని. రేపు, నిజానికి, అందించడానికి ఒక ప్రయోగాత్మక సదస్సు, ఉంటే మీకు ఆసక్తి. Meteor.js, ఒక ప్రత్యామ్నాయ పద్ధతిని ఒక బ్రౌజర్ లో జావాస్క్రిప్ట్ ఉపయోగించి, కానీ ఒక సర్వర్ పై. చాలా ఇది Node.js, ఆ సిర లో అదే. సొగసైన Android డిజైన్. Android చాలా ప్రముఖ ప్రత్యామ్నాయంగా ఉండటం iOS మరియు Windows ఫోన్ కు మరియు ఇతర మొబైల్ వేదికల. మరియు వెబ్ సెక్యూరిటీ యాక్టివ్ రక్షణ. సో నిజానికి, మీరు అని ఈ పాలుపంచుకునేందుకు నాకు వీలు ఈ గుర్తుంచుకోండి. మేము అని చాలా సంతోషంగా ఉన్నారు లీప్ మా ఫ్రెండ్స్ ఒక ప్రారంభ ఇది చలన, - ఈ పరికరం నిజంగా కేవలం వచ్చింది కొన్ని నెలల క్రితం నుండి - దయగా 30 అటువంటి పరికరములు దానం చేశారు పలువురు విద్యార్థులు వంటి కోసం తరగతి, ఒకవేళ మీరు హార్డ్వేర్ తీసుకొని అవ్వాలనుకుంటే సెమిస్టర్ చివరలో మరియు దానిని ఉపయోగించవచ్చు ఒక వాస్తవ చివరి ప్రాజెక్ట్. వారు భాషలు మద్దతు. వీటిలో దేనినీ కాబట్టి సి, వాటిలో ఏవీ PHP, గుర్తించలేరు ఈ సెమినార్లలో ఒకటి లేదా ఎక్కువ ఆసక్తి నిరూపించడానికి ఉండవచ్చు. మరియు వాటిని అన్ని చిత్రీకరించారు ఉంటుంది మీరు చెయ్యలేక ఆ సంఘటన వ్యక్తి లో హాజరు. షెడ్యూల్ ద్వారా ప్రకటించింది మేము గదులు పదిలపరచుకోనేందుకు ఇమెయిల్. చివరికి, మీరు వెళ్ళండి ఉంటే projects.cs.50.net, ఈ వెబ్సైట్ మేము ఆహ్వానించవచ్చు ప్రతి సంవత్సరం వాదిస్తున్నారు కమ్యూనిటీ, అధ్యాపకులు, నుండి చేసారో విభాగాలు, సిబ్బంది, మరియు రెండు CS50 కు వెలుపల లో ప్రాజెక్ట్ ఆలోచనలు ప్రతిపాదించారు. విద్యార్థి సమూహాలు ఆసక్తి థింగ్స్. విభాగాలు ఆసక్తి థింగ్స్. మీరు పోరాడుతున్న మీరు కనుక అక్కడ తిరుగులేని లేదు ఏమి మీకు వంటి అనిశ్చితి తో మీ అధిగమించేందుకు కోరుకుంటున్నారో. గత సమయం మేము ఒక నిస్సందేహంగా పరిచయం మరింత క్లిష్టమైన డేటా నిర్మాణం మేము ఇష్టం కంటే గత వారాలు చూడవచ్చు. మేము చాలా శ్రేణుల ఉపయోగిస్తున్నాను ఇష్టం సంతోషంగా వంటి ఉపయోగకరమైన సాధారణ డేటా నిర్మాణం. అప్పుడు మేము, ఈ పరిచయం చేసిన కోర్సు యొక్క జాబితాలు అనుసంధానించబడ్డాయి. మరియు ప్రేరణలకు ఏది ఉంది ఈ డేటాను నిర్మాణం పరిచయం? అవును? ఆ ఏమిటి? ప్రేక్షకులు: డైనమిక్ పరిమాణం. DAVID మలన్: డైనమిక్ పరిమాణం. అర్రే అయితే కనుక, మీరు కలిగి ముందుగానే దాని పరిమాణం ఉన్నప్పుడు తెలుసు మీరు కేటాయించుటకు. లింక్ జాబితా లో, మీరు తెలుసు కలిగి. మీరు సాధారణంగా కేవలం malloc, లేదా, చెయ్యవచ్చు ఒక అదనపు కేటాయించుటకు నోడ్, మాట్లాడటానికి, ఏ సమయంలో మీరు మరింత డేటా ఇన్సర్ట్ అనుకుంటున్నారా. మరియు నోడ్ అర్థం ముందుగా నిర్ణయించిన ఉంది. ఇది కేవలం వర్ణించడానికి వాడే సాధారణ పదం మేము ఆ కంటైనర్ రకమైన నిల్వ మా డేటా నిర్మాణం ఉపయోగించి ఈ ఆసక్తి కొన్ని అంశం, ఇది కేసు పూర్ణాంకాల కావడం. కానీ ఒక బేరీజుగా ఎల్లప్పుడూ ఉంది. కనుక మనం డేటా డైనమిక్ పరిమాణాలు పొందుటకు నిర్మాణం, కానీ మేము ఏమి ధర చెల్లించడానికి లేదు? అనుసంధాన జాబితాలు యొక్క కిందవైపు ఏమిటి? అవును? ప్రేక్షకులు: మరింత మెమరీ అవసరం. DAVID మలన్: ఇది మరింత అవసరం మెమరీ, ఎలా ఖచ్చితంగా? ప్రేక్షకులు: [వినబడని]. DAVID మలన్: సరిగ్గా. కాబట్టి ఇప్పుడు మేము గమనికలు తీసుకొని చేశారు అదనపు మెమరీ మేము గతంలో ఆ అవసరం లేదు, ఎందుకంటే ప్రయోజనం ఒక అర్రే యొక్క, కోర్సు యొక్క, అని ప్రతిదీ చాలా దగ్గరగా, మళ్ళీ తిరిగి వెనుకకు, ఇది మీరు రాండమ్ యాక్సెస్ ఇస్తుంది. ఎందుకంటే కేవలం చదరపు బ్రాకెట్ ఉపయోగించి సంజ్ఞామానం, లేదా సాంకేతికంగా పాయింటర్ గణితం, చాలా సాధారణ అదనంగా, మీరు ఏ యాక్సెస్ చేయవచ్చు స్థిరంగా సమయంలో అంశాలు. నిజానికి, ఆ hinting రకంగా మేము ఒక తో చెల్లిస్తున్నారని మీరు మరొక ధర లింక్ జాబితా. ఏ రన్నింగ్ సమయం నిర్మాణము శోధన వంటి ఏదో, నేను అనుకుంటే కొన్ని విలువ మరియు లోపల కనుగొనేందుకు ఒక లింక్ జాబితా? నా నడుస్తున్న సమయం అయ్యింది లేదు? N యొక్క బిగ్ ఓ. అది క్రమబద్ధీకరించబడింది అయితే? ఏ డేటా నిర్మాణం క్రమబద్ధీకరించబడింది ఉన్నట్లయితే? నేను పెద్ద కంటే బాగా చేయగలరని శోధనకు n ఓ? సంఖ్య, ఎందుకంటే చెత్త సందర్భంలో అది వాటిని చాలా చక్కగా వేరుచేయబడి, కాని సంఖ్య మీరు పెద్ద కావచ్చు కోసం చూస్తున్నారా. ఇది సంఖ్య 100, కావచ్చు అన్ని కావడం ఉండవచ్చు చివరిలో మార్గం. మరియు మీరు మాత్రమే ఒక లింక్ ప్రాప్తి ఎందుకంటే ఈ అమలు లో జాబితా దాని మొదటి నోడ్ మార్గం, మీరు అదృష్టం బయటకు ఇప్పటికీ రకమైన. మీరు మొత్తం విషయం ప్రయాణించేందుకు కలిగి మొదటి నుండి తెలుసుకోవడానికి మాత్రమే 100 వంటి పెద్ద విలువ. అది ఉంటే లేదా గుర్తించేందుకు కూడా ఉన్నాయి. కనుక మనం ఒక డేటా ఏం అల్గోరిథం చెయ్యలేరని నిర్మాణం ఈ కనిపించే? మేము బైనరీ శోధన చెయ్యలేరని, ఎందుకంటే బైనరీ శోధన మేము ఉందని అవసరం రాండమ్ యాక్సెస్. మేము కేవలం నగర నుండి దూకగలదు అనుసరించండి చేయకుండా నగర రూపంలో ఈ బ్రెడ్ ముక్కలు ఈ గమనికలు యొక్క. ఇప్పుడు, ఎలా మేము ఈ ప్రవేశపెడుతున్నాయి? బాగా, మేము ఇక్కడ స్క్రీన్ వెళ్ళండి ఉంటే, ఉంటే మేము త్వరగా ఈ డేటాను reimplement చేయవచ్చు నిర్మాణం - నా చేతిరాత ఆ కాదు ఇక్కడ గొప్ప, కానీ మేము ప్రయత్నిస్తాము. సో typedef struct, మరియు అదే చేసింది నేను ఈ విషయం ఇక్కడ పిలవాలి అనుకుంటున్నారా? నోడ్. నేను మాకు ప్రారంభించారు పొందుతారు. మరియు ఇప్పుడు, ఏమి లోపలి ఉండాలి ఆ ఒక్కొక్కటిగా కోసం డేటా నిర్మాణం జాబితా లింక్? ఎన్ని ఖాళీలను? రెండు సో. ఒక అందమైన సులభం. N సో Int. మరియు మేము, మేము కావలసిన n ఏదైనా అని పిలుస్తాము మేము అయితే ఇది ఒక Int ఉండాలి ints కోసం ఒక లింక్ జాబితా అమలు. మరియు ఇప్పుడు ఏమి రెండవ చేస్తుంది రంగంలో ఉండాలి? Struct నోడ్ *. నేను struct నోడ్ *, ఆపై నేను కనుక కూడా నేను కావలసిన ఈ కాల్ చేయవచ్చు, కానీ నేను పిలుస్తాను స్పష్టమైన ఉండాలి తదుపరి, మేము చేస్తున్న చేశారు. ఆపై నేను నా గిరజాల కలుపులు ముగించలేదు చేస్తాము. మరియు ఇప్పుడు, చివరి సారి, నేను ఇక్కడ నోడ్ అణచి. కానీ నేను ఈ ప్రకటించారు వెబ్ ఒక విధంగా నోడ్, ఎందుకు నేను ఉండటం ఇబ్బంది లేదు ఇక్కడ struct ప్రకటిస్తూ మందమైన నోడ్ * తదుపరి, వంటి వ్యతిరేకంగా తదుపరి కేవలం నోడ్ * కు? అవును? ప్రేక్షకులు: [వినబడని]. DAVID మలన్: సరిగ్గా. సరిగ్గా. సి నిజంగా మీరు వాచ్యంగా పడుతుంది మరియు ఎందుకంటే మాత్రమే నోడ్ నిర్వచనం ఇక్కడ డౌన్ మార్గం, మీరు కాదు దాన్ని ఇక్కడ వరకు చూడండి. కాబట్టి మేము నిర్వహణ యొక్క ఈ విధమైన కలిగి ఆమోదం ఇది ఇక్కడ ప్రకటన, మరింత మందమైన. Struct నోడ్, అర్థం మేము ఇప్పుడు ప్రాప్తి చెయ్యవచ్చు డేటా నిర్మాణం లోపల. మరియు జనాంతికంగా, ఈ ఎందుకంటే , ఇప్పుడు కొద్దిగా ఎక్కువ ఆత్మాశ్రయ మారుతోంది స్టార్ సాంకేతికంగా ఇక్కడ వెళ్ళవచ్చు, ఇక్కడ వెళ్ళవచ్చు, అది కూడా మధ్యలో వెళ్ళి. మేము శైలి మార్గదర్శిని లో, స్వీకరించారు కోర్సు, పెట్టటం సమావేశం డేటా హక్కు తదుపరి స్టార్ రకం, ఈ విషయంలో ఇది, struct నోడ్ ఉంటుంది. కానీ పాఠ్యపుస్తకాలు చాలా గ్రహించడం మరియు ఆన్లైన్ సూచనలు, మీరు నిజంగా వాటిని ఇతర సైడ్ లో చూడండి. కానీ ఆ నిజానికి రెండింటిలో గ్రహించడం పని మరియు మీరు కేవలం ఉండాలి స్థిరమైన. అన్ని కుడి. మా ప్రకటన ఆ struct నోడ్. కానీ అప్పుడు మేము మరింత మొదలు ఆధునిక విషయాలు. ఉదాహరణకు, మేము పరిచయం నిర్ణయించుకుంది ఒక హాష్ పట్టిక వంటి ఏదో. ఇక్కడ పరిమాణం n యొక్క ఒక హాష్ పట్టిక, ఉంది n ఎడమ పైన 0 నుండి ఇండెక్స్ మైనస్ అడుగున 1 వదిలి. ఈ హాష్ కావచ్చు ఏదైనా పట్టిక. కానీ మేము విషయాలు రకాల మాట్లాడటానికి ఏమి ఒక హాష్ పట్టిక ఉపయోగించి గురించి? ఏమి నిల్వ? పేర్లు. మేము వంటి పేర్లు అలా మేము చివరిసారి చేసింది. మరియు నిజంగా, మీరు ఏదైనా నిల్వ చేయవచ్చు. మరియు మేము మళ్ళీ ఈ చూస్తారు PHP మరియు జావాస్క్రిప్ట్ లో. ఒక హాష్ పట్టిక స్విస్ ఒక nice విధమైన ఉంది మీరు నిల్వ అనుమతించే ఆర్మీ నైఫ్ అందంగా చాలా మీరు లోపలి కావలసిన విలువలు కీలు ద్వారా, అది. విలువలు కీస్. ఇప్పుడు ఈ సాధారణ సందర్భంలో, మా కీలు కేవలం సంఖ్యలు. మేము ఒక హాష్ అమలు చేస్తున్నారు వ్యూహం టేబుల్. అందువలన కీలు 0 ఉంటాయి, 1, 2, మొదలగునవి. అందువలన మేము మానవుల, గత నిర్ణయించుకుంది మీరు మేము ఉంటే ఏమి తెలుసు వారం ఆ స్టోర్ పేర్లు వెళ్ళడం వీలు యొక్క కేవలం ఏకపక్ష, కానీ చాలా సహేతుక, ఉంటాయని ఆలిస్, ఒక పేరు, కేవలం 0 లోకి సూచికకు జోడిస్తుంది. మరియు బాబ్, ఒక B పేరు, ఇండెక్స్ ఉంటుంది 1 లోకి, మొదలగునవి. కాబట్టి మేము, ఇన్పుట్లను మధ్య మ్యాపింగ్ కలిగి ఇది తీగలను ఉన్నాయి, మరియు హాష్ సంఖ్యలు ప్రదేశాలు. తద్వారా ప్రక్రియ సాధారణంగా అని పిలుస్తారు హాష్ విధి, మరియు మీరు నిజంగా చెయ్యవచ్చు ఇది కోడ్ అమలు. నేను ఒక హాష్ ఫంక్షన్ను అమలు అనుకుంటే ఖచ్చితంగా మేము చేస్తుంది కేవలం చివరిసారి నుండి వర్ణించబడింది, నేను వాటిని వంటి, పడుతుంది ఒక ఫంక్షన్ డిక్లేర్ ఉదాహరణకు ఇన్పుట్ - మరియు లెట్స్ ఈ ఈ చేయండి ఇక్కడ స్క్రీన్. నేను ఒక హాష్ అమలు అనుకుంటే ఫంక్షన్, నేను చెప్పుకునే ఈ వంటి ఏదో. ఇది ఒక Int తిరిగి జరగబోతోంది. ఇది హాష్ అని పిలుస్తారు జరగబోతోంది, మరియు అది ఒక వాదన అంగీకరించవు వెళుతున్న స్ట్రింగ్, లేదా మేము, ఇప్పుడు మరింత సరైన ఉంటుంది మరియు చార్ * అనవచ్చు, మేము అది లు కాల్ చేస్తాము. ఆపై అన్ని ఈ ఫంక్షన్, చేయాలి చివరికి, ఒక Int తిరిగి ఉంది. ఇప్పుడు, అది ఎలా చేసే వాటిని అంత స్పష్టం కాదు. నేను ఏ లేకుండా ఈ అమలు వెళుతున్న ప్రస్తుతం తనిఖీ లోపం ఏర్పాటు. నేను గుడ్డిగా చెప్పటానికి వెళుతున్నాను, తిరిగి లు బ్రాకెట్ 0 సంసార ఉంది, మైనస్, వీలు యొక్క రాజధాని ఒక సెమికోలన్, చెప్పటానికి. పూర్తిగా విభజించవచ్చు. ఇది ఖచ్చితంగా లేదు ఎందుకంటే ఒక, s శూన్య ఏమి ఉంది? చెడు విషయాల జరిగే వెళ్తున్నారు. రెండు, ఏమి ఈ మొదటి లేఖ పేరు ఒక పెద్ద అక్షరం కాదు? చెయ్యి మాత్రం కాదు అని అవుట్ బాగా గాని. ఇది ఒక చిన్న లేఖ కావచ్చు లేదా అన్ని వద్ద ఒక లేఖ. ఇక్కడ అభివృద్ధి కోసం కాబట్టి పూర్తిగా గది, కానీ ఈ ప్రాథమిక ఆలోచన. మేము వంటి మాటలతో గత వారం గురించి అలైస్ మ్యాప్ కేవలం ఒక ప్రక్రియ 1 0 మరియు బాబ్ వ్యక్తం చేయవచ్చు ఖచ్చితంగా మరింత formulaically ఒక సి వంటి ఇక్కడ పని. మళ్ళీ హాష్ అని, ఒక స్ట్రింగ్ పడుతుంది ఇన్పుట్, ఆపై ఏదో ఏదో చేస్తాడు ఒక ఉత్పత్తిని సరైన తో. మా బ్లాక్ బాక్స్ వివరణ కాకుండా మేము దీర్ఘ పూర్తి చేసిన. నేను ఈ విధంగా తెలియదు హుడ్ కింద పని. సమస్య సెట్ 6, సవాళ్ళలో ఒకటి కోసం మీరు నిర్ణయించుకుంటారు కోసం ఏమి మీ హాష్ ఫంక్షన్ను ఉంటుంది? నల్ల లోపలి ఉండాలి జరగబోతోంది ఏమి బాక్స్, మరియు బహుశా, ఇది ఒక ఉంటాం కొంచం ఈ కంటే ఆసక్తికరమైన, మరియు లోపం ఖచ్చితంగా ఎక్కువగా ఈ ప్రత్యేక కంటే తనిఖీ అమలు. కానీ సమస్యలు కుడి, పెరగవచ్చు? మేము ఇలాంటి డేటా నిర్మాణం కలిగి ఉంటే ఒక సమస్యలను ఒకటి ఏమిటి మీరు ఇన్సర్ట్ మీరు ఓవర్ టైం లోకి అమలు చెయ్యవచ్చు లోకి మరింత పేర్లు హాష్ పట్టిక? మీరు కుడి, గుద్దుకోవటం పొందుటకు? మీరు ఆలిస్ మరియు ఆరోన్, ఉంటే దీని పేర్లు జరిగింది రెండు ప్రజలు ఒక ప్రారంభం? పేరు మీరు, ప్రశ్న ప్రార్థిస్తాడు రెండవ అటువంటి పేరు చాలు? బాగా, మీరు naively కేవలం అది చాలు ఉండవచ్చు బాబ్ చెందినదే, అయితే తరువాత బాబ్ ఉంది మీరు ప్రయత్నించండి ఉంటే రకమైన వత్తిడి తదుపరి తన పేరును ఇన్సర్ట్ మరియు తనకు గది ఉంది. సో మీరు చార్లీ ఉన్న బాబ్, చాలు ఉండవచ్చు మరియు మీరు ఈ చాలా త్వరగా ఊహించుకోగల ఒక గజిబిజి ఒక బిట్ లోకి devolving. ముగింపు లో సరళ ఏదో, మీరు పేరు కేవలం మొత్తం విషయం శోధించడానికి కలిగి అలైస్ లేదా బాబ్ కోసం చూస్తున్న లేదా ఆరోన్ లేదా చార్లీ. సో బదులుగా మేము బదులుగా కేవలం యొక్క, ప్రతిపాదించారు సమాంతర బహిరంగ ప్రదేశాలకు పరిశీలించకుండా మరియు మేము అక్కడ పేర్లు plopping ఒక ఫ్యాన్సియెర్స్ విధానం ప్రతిపాదించారు. ఒక ఇప్పటికీ అమలు ఒక హాష్ పట్టిక సూచికలు శ్రేణి, కానీ డేటా రకం ఆ సూచికలు ఇప్పుడు గమనికలు ఉన్నాయి. ఏమి గమనికలు? లింక్ జాబితాలు కు పాయింటర్లు. ఎందుకంటే ఒక లింక్ జాబితా గుర్తుచేసుకున్నారు నిజంగా కేవలం ఒక నోడ్ కు పాయింటర్, మరియు నోడ్ ఒక తదుపరి రంగంలో, మరియు ఆ నోడ్ ఉంది ఒక తదుపరి రంగంలో ఉంది, ఇది ఇలాగే కొనసాగుతుంది. సో మీరు ఇప్పుడు ఈ శ్రేణి యొక్క ఆలోచించవచ్చు ఒక హాష్ పట్టిక ఎడమ వైపు ఒక లింక్ జాబితా దారితీసింది. మీరు ఒక వస్తే ఇది ఉపయోగకరంగా ఉంటుంది ఆలిస్ మరియు ఆరోన్ మధ్య ఘర్షణ మీరు ఏమి చేస్తారు రెండవ వ్యక్తి? మీరు కేవలం అతనిని అటాచ్ లేదా ఆమె ముగింపు, లేదా ప్రారంభంలో ఆ లింక్ జాబితా. మరియు నిజానికి ద్వారా కేవలం తెలివితక్కువ చేసుకుందాం కేవలం రెండవ కోసం. ఎక్కడ చాలా అర్ధవంతం అని? నేను ఆలిస్ ఇన్సర్ట్ మరియు ఆమె వద్ద ముగుస్తుంది ఉంటే మొదటి స్థానాన్ని, అప్పుడు నేను ప్రయత్నించండి ఆరోన్ యొక్క పేరు ఇన్సర్ట్, మరియు ఉంది ఖచ్చితంగా ఘర్షణ నేను చాలు ఉండాలి అతనికి ప్రారంభంలో లింక్ జాబితా? ఆ మొదటి స్థానంలో వార్తలు లేదా చివరిలో? ప్రేక్షకులు: [వినబడని]. DAVID మలన్: OK. నేను ప్రారంభించి విన్న. ఎందుకు ప్రారంభంలో? ప్రేక్షకులు: [వినబడని]. DAVID మలన్: OK. ఇది అక్షర వార్తలు, nice వార్తలు కనుక. ఒక మంచి ఆస్తి యొక్క. ఇది నాకు శక్తివంతమైన కొన్ని సమయాన్ని ఆదా. ఇది నాకు బైనరీ శోధన తెలియజేసేలా, కానీ నాకు కనీసం బయటకు చేయగలరు నేను తెలుసుకోవటం ఒక లూప్ యొక్క, బాగా, నేను మార్గం రెడీ గత ఉన్నాయి ఆరోన్ ఈ అవుతుందని అనుబంధ జాబితా క్రమబద్ధీకరించబడింది. నేను చూస్తున్న నా సమయం వృథా లేదు ముగింపు వరకు. తద్వారా సహేతుకమైన వార్తలు. ఎందుకు లేదంటే ఇన్సర్ట్ అనుకొనుచున్న వద్ద గుద్దుకున్న పేరు జాబితా ప్రారంభం? ఆ ఏమిటి? ప్రేక్షకులు: [వినబడని]. DAVID మలన్: ఇది చాలా కాలం పడుతుంది జాబితా చివర పొందుటకు. వాస్తవానికి, ఇక మరియు ఎక్కువ. మీరు ఇన్సర్ట్ ఎక్కువ పేర్లను ఒక, ఇక ఆ ప్రారంభం గొలుసు పొందుటకు వెళ్తున్నారు. ఇక ముడిపడి జాబితా పొందుటకు వెళ్తున్నారు. సో మీరు నిజంగా కేవలం ఉన్నాము మీ సమయం వృధా. బహుశా మీరు నిర్వహించడం మెరుగ్గా ఉన్నాము స్థిరంగా చొప్పించడం సమయం, 1 పెద్ద O, ఎల్లప్పుడూ గుద్దుకున్న పేరు వద్ద పెట్టటం ద్వారా లింక్ జాబితా ప్రారంభంలో, మరియు ఎక్కువ చింతిస్తూ కాదు సార్టింగ్ గురించి. ఉత్తమ సమాధానం ఏమిటి? ఇది లేదు. ఇది రకమైన ఆధారపడి ఏమి పంపిణీ నమూనా ఏమిటి, ఉంది పేర్లు మీరు చేరుస్తారు. ఇది తప్పనిసరిగా కాదు ఒక స్పష్టమైన సమాధానం. కానీ ఇక్కడ మళ్ళీ, ఉంది ఒక రూపకల్పన అవకాశం. కాబట్టి మేము అప్పుడు, ఈ విషయం చూశారు ఇది నిజంగా ఇతర పెద్ద అవకాశం p-సెట్ 6. మరియు, మీరు ఇప్పటికే కలిగి ఉంటే, తెలుసుకోవటం హాష్ ఈ రెండు లోకి Zamyla పడిపోవడంతో, పట్టికలు మరియు మరింత వివరంగా ప్రయత్నాలు. మరియు వీడియో నడకను ఉంది p-సెట్ స్పెక్ పొందుపరిచారు. ఈ ఒక trie ఉంది - T-R-I-E. మరియు గురించి ఆసక్తికరమైన ఏమి ఉంది ఇది అమలు సమయం మాక్స్వెల్ వంటి, ఒక పేరు కోసం శోధించే చివరిసారి, ఏమి పెద్ద O ఉంది? ఆ ఏమిటి? ప్రేక్షకులు: అక్షరాల సంఖ్య. DAVID మలన్: అక్షరాల సంఖ్య. నేను రెండు విషయాలు విని. అక్షరాలు మరియు స్థిరంగా సమయం సంఖ్య. సో యొక్క మొదటి తో వెళ్ళి చెయ్యనివ్వండి. అక్షరాల సంఖ్య. బాగా, ఈ డేటా నిర్మాణం, రీకాల్, ఉంది ఒక చెట్టు, ఒక కుటుంబం చెట్టు, ప్రతి ఇష్టం దీని నోడ్స్ శ్రేణుల ఉంటాయి. మరియు ఆ శ్రేణుల కు గమనికలు ఉన్నాయి ఇతర నోడ్స్, లేదా ఇతర చెట్టు లో శ్రేణుల. మేము అప్పుడు గుర్తించడానికి కావలెను కనుక మాక్స్వెల్ ఇక్కడ ఉంది లేదో నేను వెళ్ళవచ్చు యొక్క అగ్రభాగాన మొదటి శ్రేణి, కు చెట్టు, అని పిలవబడే రూట్, ఎగువ అప్పుడు trie, మరియు మీ పాయింటర్ అనుసరించండి, అప్పుడు ఒక పాయింటర్, x, w, ఇ, l, l. ఆపై నేను, కొన్ని ప్రత్యేక చిహ్నం చూసినప్పుడు ఒక త్రిభుజం మాదిరిగా ఇక్కడ సూచిస్తారు. కోడ్ లో మీరు మేము ప్రతిపాదించారు చూస్తారు మీరు కేవలం అవును మాట్లాడుతూ, ఒక bool వంటి అమలు లేదా సంఖ్య, ఒక పదం ఇక్కడ ఆపి. బాగా, ఒకసారి మేము M-A-X-W-E-L-L వెళ్ళిన చేసిన, బహుశా, ఏడు అనుకుని ఎనిమిది మేము గతంలో ఒక ఎనిమిది వెళ్ళి ఉంటే మాక్స్వెల్ కనుగొనేందుకు దశలను. లేదా దానిని K. కాల్ వీలు అయితే గత గుర్తు సమయం, నేను అక్కడ ఉంటే వాదించారు ఒక న యదార్థం గరిష్ట పొడవు పదం, 40-కొన్ని-బేసి అక్షరాలు వంటి, ఒక గరిష్ట పొడవు సూచిస్తుంది ఒక స్థిరమైన విలువగా. సో నిజంగా, అవును, అది సాంకేతికంగా పెద్ద O వార్తలు కానీ 8 లేదా 7, లేదా K. యొక్క నిజంగా పెద్ద O యొక్క ఏం ఒక పరిమిత టోపీ లేదు ఉంటే K కావచ్చు, అది స్థిరమైన వార్తలు. కావున 1 పెద్ద O వద్ద ఉంది రోజు చివరిలో. కాదు నిజమైన ప్రపంచంలో. మీరు నిజంగానే చూడటం మొదలు లేనప్పుడు మీ ప్రోగ్రామ్ యొక్క పరిగెత్తడం మీ గడియారం. ఇది ఖచ్చితంగా ఒక బిట్ చేస్తాడు నిజంగా స్థిరరాశి కంటే తక్కువ ఒక మెట్టు సమయం. ఇది ఏడు లేదా ఎనిమిది దశలను చేస్తాడు కానీ ఇప్పటికీ చాలా, చాలా మంచి పని ఆ n యొక్క పెద్ద O వంటి ఒక అల్గోరిథం కంటే లో ఏమి పరిమాణం మీద ఆధారపడి ఉంటుంది డేటా నిర్మాణం. ఇక్కడ పైకి మేము చేర్చగలను ఉంది గమనించండి ఈ ఒక మిలియన్ పేర్లు డేటా నిర్మాణం, కానీ ఎన్ని ఎక్కువ దశలను దానిని కనుగొనేందుకు మాకు తీసుకోవాలని వెళ్తున్నారు ఆ సందర్భంలో మాక్స్వెల్? గమనిక. అతను చెక్కుచెదరక వార్తలు. ఇప్పటివరకు, నేను మేము చూసిన భావించడం లేదు ఒక డేటా నిర్మాణం లేదా ఒక ఉదాహరణగా పూర్తిగా అని అల్గోరిథం బాహ్య కనిపించదు ఆ వంటి ప్రవర్తనలు. కానీ ఈ అద్భుతమైన ఉండకూడదు. ఈ మాత్రమే పరిష్కారం ఉండకూడదు p సెట్లో మరియు అది కాదు. ఈ డేటాను అవసరం లేదు నిర్మాణం మీరు, కు ఆకర్షించబడతారని ఉండాలి ఎందుకంటే హాష్ పట్టికలు వంటి బేరీజుగా. మీరు ఇక్కడ చెల్లించడానికి ధర ఏమిటి? మెమరీ. నా ఉద్దేశ్యం, ఈ ఒక ఘోరమైన ఉంది మెమరీ మొత్తం. మరియు మీరు చాలా ఇక్కడ చూడండి ఎందుకంటే ఈ చిత్రం రచయిత ఖచ్చితంగా, శ్రేణుల అన్ని స్తంభించిపోయింది మరియు మేము ఒక యొక్క మా చూసిన లేదు B మరియు C యొక్క మరియు Q మరియు Y యొక్క మరియు Z యొక్క ఈ శ్రేణుల లో. కానీ వారు అక్కడ ఉండరు. ఈ నోడ్స్ ప్రతి ఒక వ్యూహరచనలు ఉంది 26 లేదా ఎక్కువ బైట్లు, ప్రతి ఇది ఒక లేఖ సూచిస్తుంది. మేము మద్దతు విధంగా మా కేసులో 27, సమస్య సెట్ లో సంగ్రహంగా రాయడానికి. ఈ డేటాను నిర్మాణం నిజంగా కాబట్టి, నిజంగా బాగా విస్తృత. మరియు మాత్రమే మందగిస్తుంది ముగింపు ఉండవచ్చు విషయాలు డౌన్, లేదా కనీసం మీరు ఒక ఖరీదు చాలా స్పేస్. కానీ మళ్ళీ, మేము డ్రా చేయవచ్చు ఇక్కడ పోలికలు. తిరిగి కొంత గుర్తు, మేము చాలా సాధించిన విభజన మరింత ఉత్తేజకరమైన నడుస్తున్న సమయం మేము విలీనంతో విధమైన, కానీ ధర ఉపయోగించినప్పుడు మేము విలీనం కోసం n సాధించడానికి n లాగిన్ చెల్లించిన విధమైన మేము ఖర్చు అవసరం మరింత ఏమి వనరుల? మరింత స్థలం. మేము ఒక ద్వితీయ శ్రేణి అవసరం కేవలం వంటి, ప్రజలు కాపీ మేము వేదికపై ఇక్కడ చేసింది. మరలా, స్పష్టమైన విజేతలు, కానీ కేవలం ఆత్మాశ్రయ డిజైన్ నిర్ణయాలు తయారు. అన్ని కుడి. సో ఎలా ఈ గురించి? ఎవరైనా ఇది D-హాల్ గుర్తించాలని? OK. సో మాకు మూడు చేయండి. మాథుర్ హౌస్. సో ఈ మాథుర్ యొక్క భోజనాల కోసం. నేను అన్ని ఆహారశాలలు కలిగి పందెం ఉంటాం ఈ వంటి trays స్టాక్లను. మరియు ఈ నిజంగా ప్రాతినిధ్యం కలిగిందా మేము చేసిన ఏదో ఖచ్చితంగా ఇప్పటికే చూసిన. మేము వాచ్యంగా ఒక స్టాక్ దీనిని. మీ పరంగా మరియు స్టాక్ డేటా వెళ్ళే కంప్యూటర్ యొక్క మెమరీ ఉంది ధర్మాలని పిలుస్తారు అవుతున్న సమయంలో. ఉదాహరణకు, విషయాలు రకాల వెళ్ళి సంబంధించి స్టాక్ న మేము చర్చించిన చేసిన మెమరీ లేఅవుట్ గత వారాల్లో? ఆ ఏమిటి? ప్రేక్షకులు: విధులు కాల్లు. DAVID మలన్: నేను క్షమించండి రెడీ!. ప్రేక్షకులు: విధులు కాల్లు. DAVID మలన్: విధులు కాల్లు, కానీ ప్రత్యేకంగా, ప్రతి లోపల ఏమిటి ఆ ఫ్రేమ్? విషయాలు రకాల? అవును. స్థానిక వేరియబుల్స్ సో. ఎప్పుడైనా మేము, కొన్ని స్థానిక నిల్వ అవసరం ఒక వాదన వలె లేదా Int నేను, లేదా Int తాత్కాలిక, లేదా సంసార స్థానిక వేరియబుల్, మేము పరిష్కరించగలుగుతున్నాము ఉంది స్టాక్ ఆ పెట్టటం. మరియు మేము అది ఒక స్టాక్ కాల్ ఎందుకంటే ఆ పొరలు ఆలోచన. వాస్తవానికి మ్యాచ్ కేవలం రకమైన అప్, వాటి భావన. కానీ దాన్ని మారుతుంది ఒక స్టాక్ కూడా చేస్తాడు డేటా నిర్మాణం వలె చూడవచ్చు, ఒక ఒక శ్రేణి ప్రత్యామ్నాయ, ఒక ప్రత్యామ్నాయ ఒక లింక్ జాబితా. సందర్భానుసారంగా మరింత ఆసక్తికరంగా ఇప్పటికీ ఉండవచ్చు ఆ గాని ఉపయోగించి అమలు విషయాలు, కానీ అది వేరే రకం డేటా నిర్మాణం, నిజంగా, మద్దతు మాత్రమే రెండు. కానీ మీరు ఫ్యాన్సియెర్స్ న జోడించవచ్చు ఈ కంటే లక్షణాలను. కానీ ఈ ప్రాథమికాంశాలు మాత్రమే - పుష్ మరియు పాప్. మరియు ఒక స్టాక్ తో ఆలోచన అని నేను లేదా Annenberg లేకుండా, ఇక్కడ కలిగి , పక్కింటి నుండి ఒక ట్రే తెలుసుకోవడం ఇది 9 వ స్థానంలో ఉంది. సో కేవలం ఒక Int. మరియు నేను డేటా లోకి ఈ పుష్ అనుకుంటున్నారా ప్రస్తుతం ఖాళీగా ఉంది నిర్మాణం. ఈ స్టాక్ దిగువన పరిగణించండి. నేను పై ఈ సంఖ్య 9 పుష్ ఉంటుంది స్టాక్ మరియు ఇప్పుడు అది కుడి ఉంది. కానీ ఒక స్టాక్ గురించి ఆసక్తికరమైన విషయం నేను ఇప్పుడు పుష్ అనుకుంటే ఉంది కొన్ని ఇతర విలువ, వంటి 17 మరియు నేను పుష్ స్టాక్ లో ఈ, నేను వెళుతున్నాను , నేను వెళుతున్నాను మాత్రమే స్పష్టమైన విషయం కుడి అది చాలు అక్కడ మానవులు పైన, అది చాలు వంపుతిరిగిన అవుతుంది. అయితే ఇప్పుడు ఆసక్తికరంగా , ఎలా నేను 9 వస్తుందా ఉంది? మీకు తెలిసిన, నేను కొంత ప్రయత్నం లేకుండా లేదు. సో గురించి ఆసక్తికరంగా ఒక స్టాక్ నమూనా ద్వారా అది ఒక ఎల్ఐఎఫ్ఓ ఆర్ధిక డేటా నిర్మాణ. వర్ణించు సిల్లీ మార్గం గత, ముందుగా. గత సంఖ్య ఈ సమయంలో 17. నేను ఏదో ఆఫ్ పాప్ మీరు అనుకుంటే స్టాక్, అది మాత్రమే 17 ఉంటుంది. కాబట్టి ఒక తప్పనిసరి క్రమంలో ఉంది ఇక్కడ కార్యకలాపాలు, చివరి అంశం మొదటి ఒకటి ఉంటుంది. అందువల్ల ఎక్రోనిం, ఎల్ఐఎఫ్ఓ ఆర్ధిక. సో ఎందుకు ఈ ఉపయోగకరంగా ఉంటుంది? వారి సందర్భాలలో మీరు కోరుతున్న ఈ వంటి ఒక డేటా నిర్మాణం అనుకుంటున్నారా? బాగా, అది ఖచ్చితంగా ఉపయోగం యొక్క కంప్యూటర్ లోపల. సో ఆపరేటింగ్ వ్యవస్థలు స్పష్టంగా ఈ ఉపయోగించడానికి స్టాక్లకు డేటా నిర్మాణం రకం. మేము కూడా అదే ఆలోచన చూస్తారు వెబ్ పేజీలకు అది వచ్చినప్పుడు. ఈ వారం వారం సో అండ్ బియాండ్, మరియు మీరు వెబ్ అమలు ప్రారంభించడానికి వంటి ఒక భాషలో పేజీలను HTML, మీరు చేయవచ్చు అని నిజానికి వంటి డేటా నిర్మాణం ఉపయోగించడానికి ఈ గుర్తించడానికి ఉంటే పేజీ సరిగ్గా ఫార్మాట్ ఉంది. మేము చూస్తారు ఎందుకంటే అన్ని వెబ్ పేజీలు అనుసరించండి అధిక్రమం ఒక విధమైన, ఒక పల్లముచేయు రోజు చివరిలో, ఒక అని హుడ్ కింద చెట్టు నిర్మాణం. కేవలం ఒక బిట్ లో కాబట్టి మరింత. కానీ ఇప్పుడు కోసం, యొక్క ఒక కోసం ప్రతిపాదించారు వీలు క్షణం, మేము గురించి ఎలా వెళ్ళటానికి ఒక స్టాక్ ఏమిటి? ప్రాతినిధ్యం మేము అమలు నాకు ప్రతిపాదించారు లెట్ ఈ వంటి కోడ్ తో ఒక స్టాక్. సో ఒక స్టాక్ అది లోపల కలిగి వెళ్తున్నారు రెండు విషయాలు, ఒక వరుస అని trays, కేవలం డెమో అనుగుణంగా. మరియు ఆ శ్రేణి లో అంశాలు ప్రతి ఒక రకం Int అవతరిస్తుంది. మరియు సామర్థ్యం చాలావరకు ఏమిటి? నేను వ్రాయలేదు చేసిన ఎందుకంటే ఇక్కడ పూర్తి నిర్వచనం. ఇది బహుశా గరిష్ట వార్తలు అర్రే యొక్క పరిమాణం. మరియు అది బహుశా ఒక పదునైన వంటి ప్రకటించబడిన కొన్ని, ఫైలు ఎగువన నిర్వచించే స్థిరంగా ఇలాంటి సూచించినట్లు కేవలం పెట్టుబడి. సో ఎక్కడా సామర్థ్యం నిర్వచిస్తారు గరిష్ట పరిమాణం. ఇంతలో, లోపల డేటా నిర్మాణం ఒక స్టాక్ను తెలిసిన అక్కడ అవుతుంది కేవలం తెలిసిన పూర్ణాంకాలు కేవలం పరిమాణం. నేను ఇప్పుడు ఈ ప్రాతినిధ్యం వహిస్తే కనుక చిత్రాల, యొక్క ఊహించు అనుమతించే ఈ మొత్తం బ్లాక్ బాక్స్ నా స్టాక్ సూచిస్తుంది. అది లోపల రెండు వేరియబుల్స్ ఉంది. నేను డ్రా వెళుతున్నాను పరిమాణం మొదటి. మరియు నేను వెళుతున్నాను రెండవ వ్యూహం డ్రా. కానీ కేవలం, విషయాలు క్రమముగా ఉంచడానికి సాధారణంగా నేను వంటి వ్యూహం అందుకున్నాయి nice ఈ, కానీ అది యొక్క రకమైన మేము రియాలిటీ మ్యాచ్, లేదా మానసిక మోడల్ మ్యాచ్. సో నాకు బదులుగా శ్రేణి డ్రా వీలు నిలువుగా, ఇది కేవలం, మళ్ళీ ఉంది, కళాకారుడు యొక్క కూర్పు. నిజంగా అది పట్టింపు లేదు హుడ్ కింద ఉంది. మరియు మేము, అప్రమేయంగా, చెప్తారు చేస్తాము సామర్థ్యం మూడు అవతరిస్తుంది. సో ఈ నగర 0, ఈ ఉంటుంది నగర 1, ఈ ఉంటుంది నగర 2 ఉంటుంది. నేను ఒక ఒత్తిడి బంతి తో లంచం ఉంటే చేస్తారన్నమాట ఎవరైనా పైకి వచ్చి అమలు చేయాలని కేవలం ఒక క్షణం ఇక్కడ బోర్డ్? OK, మొదటి మీ చేతి చూసింది. అప్ న వస్తాయి. అన్ని కుడి. సో నేను స్టీవెన్ నమ్ముతారు. అప్ న వస్తాయి. అన్ని కుడి. కానీ ఇప్పుడు మేము ప్రారంభ కు రివైండ్ ఊహించు ప్రపంచంలోని రాష్ట్ర పేరు నేను కేవలం ఒక స్టాక్ డిక్లేర్డ్, మరియు అది అదే సామర్థ్యం మూడు అవతరిస్తుంది. కానీ పరిమాణం ఇంకా ఖరారు చేయలేదు. Trays ఇంకా ఖరారు చేయలేదు. మొదటి ప్రశ్నలు ఒక జంట సో. మరియు నాకు మీరు మైక్ కల్పించడానికి అనుమతిస్తాయి మీరు చేయగలరా ఈ మరింత చురుకుగా పాల్గొనే. సో పరిమాణం లోపలి ఈ సమయంలో ఏమిటి సమయం లో నేను చేసిన అన్ని ఉంటే ఒక స్టాక్ డిక్లేర్డ్ కోడ్ యొక్క ఒక లైన్? స్టీవెన్: కాదు. DAVID మలన్: సరే, పెద్దగా. మేము, పరిమాణం యొక్క లోపల ఏమి తెలుసు మేము లోపల ఏమి తెలుసు ఇక్కడ ఈ శ్రేణి యొక్క? స్టీవెన్: యథేచ్ఛగా కోడ్, కుడి? కేవలం - DAVID మలన్: అవును, నేను వెళుతున్నాను ఇది కోడ్ కాల్, కానీ యాదృచ్ఛిక - స్టీవెన్: థింగ్స్. DAVID మలన్: యాదృచ్ఛిక వంటి థింగ్స్ స్టీవెన్: బిట్స్. DAVID మలన్: బిట్స్ కుడి? చెత్త విలువలు సో, కుడి? సో 0 మరియు 1 యొక్క ప్రస్తారణలను. మునుపటి ఉపయోగాలకు అవశేషాలను ఈ మెమరీ. మరియు మేము నిజంగా తెలియదు ఏమి విలువలు , కాబట్టి మేము సాధారణంగా వాటిని డ్రా ఉన్నాయి ప్రశ్నార్థకాలుగా. మేము బహుశా మీరు కనుక మొదటి విషయం ఇక్కడ చేయాలనుకుంటున్నారా వెళుతున్న - మరియు నాకు లోపల ఈ రంగంలో కల్పించడానికి అనుమతిస్తాయి trays - అక్కడ ఒక పేరు యొక్క. మేము బహుశా ఏ ప్రారంభించడం ఉండాలి పరిమాణం మేము అనుకుంటే కు ఈ స్టాక్ ఉపయోగించి ప్రారంభించడానికి? స్టీవెన్: ట్రే ఉప 3. DAVID మలన్: సో, OK. స్పష్టమైన ఉండాలి, సామర్థ్యం నిర్ధారించే ఏదో ఒకచోట మూడు. మరియు ఆ నేను ఉపయోగించిన ఏమిటి అర్రే కేటాయించుటకు. సైజు చూడండి వెళుతున్న ఎన్ని trays స్టాక్ ప్రస్తుతం. స్టీవెన్: జీరో. DAVID మలన్: కనుక ఇది సున్నా ఉండాలి. అందుకే, మరియు ఏ వేలితో, పరిమాణం లో ఒక సున్నా డ్రా. అన్ని కుడి. కాబట్టి ఇప్పుడు, ఈ లోపలి ఏమిటి ఇక్కడ, మనం చెప్పలేము. ఈ నిజంగా కేవలం చెత్త విలువలు. కనుక మనం ప్రశ్నార్థకాలుగా డ్రా, కానీ ఇప్పుడు కోసం బోర్డు శుభ్రంగా ఉంచడంలో లెట్స్ అది పట్టింపు లేదు ఎందుకంటే అక్కడ ఏమి. మేము శ్రేణి ప్రారంభించడం అవసరం లేదు ఏదైనా, మేము తెలుసు ఉంటే ఎందుకంటే స్టాక్ పరిమాణం సున్నా, బాగా, మేము ఏదైనా చూడటం చేయరాదు ఏమైనప్పటికీ ఈ శ్రేణి ఈ పాయింట్ సమయంలో. కాబట్టి ఇప్పుడు నేను నెట్టే ఊహించు స్టాక్ లో సంఖ్య 9. ఎలా మేము డేటా నిర్మాణం అప్డేట్ చేయాలి ఈ బ్లాక్ బాక్స్ లోపలి? ఏమి విలువలు మార్చాలి? స్టీవెన్: లోపల - పరిమాణం? DAVID మలన్: OK. సైజు ఏమి కావాలో? స్టీవెన్: సైజు ఒకరు. DAVID మలన్: OK. సో పరిమాణం ఒకటిగా ఉండాలి. సో మీరు ఒక జంట మార్గాల్లో చేయవచ్చు. ఇప్పుడు, నాకు మీరు ఇవ్వాలని లెట్ మీ వేలు ఒక రబ్బరు ఉంది. అన్ని కుడి. అప్పుడు ఇప్పుడు మీ వేలు ఒక బ్రష్ ఉంది. అన్ని కుడి. మరియు ఇప్పుడు ఏమి, మార్చడానికి ఉంది ఖచ్చితంగా, డేటా నిర్మాణం లో? స్టీవెన్: మేము నుండి చేయబోతున్నామని 9 క్రింది నుండి పైకి. DAVID మలన్: 9. OK, గుడ్. సో ఇప్పటికీ వద్ద ఏమి పట్టింపు లేదు నగర ఒకటి లేదా రెండు వారు ఉన్నారు ఎందుకంటే చెత్త విలువలు, కానీ మేము ఇబ్బంది లేదు పరిమాణం ఎందుకంటే అక్కడ చూస్తున్న మాకు చెప్పడం మాత్రమే మొదటి మూలకం నిజానికి అవసరమని. కాబట్టి ఇప్పుడు నేను జాబితా లో 17 పుష్. ఈ చిత్రానికి జరుగుతుంది? స్టీవెన్: సో పరిమాణం రెండు వెళ్ళడానికి వెళ్తున్నారు. DAVID మలన్: OK. మీరు ఎరేజర్ ఉన్నాము - oops. మీరు ఒక రబ్బరు ఉన్నాము. స్టీవెన్: ఎరేజర్. DAVID మలన్: మీరు ఒక బ్రష్ను ఉన్నాము. స్టీవెన్: బ్రష్. DAVID మలన్: OK. మరియు ఏమి? అప్పుడు మనం -: స్టీవెన్ DAVID మలన్: మేము 17 ముందుకు. స్టీవెన్: మేము, పైన 17 కర్ర - DAVID మలన్: సరే, మంచి. స్టీవెన్: - ఇది డ్రాప్ డౌన్ మెనూ. DAVID మలన్: అన్ని కుడి. ఇది సులభం సంతరించుకోనుంది. నేను మీరు ఈ సమయం సహాయం వెళుతున్న కాదు. 22 పుష్. స్టీవెన్: పూర్తయింది. ఒక రబ్బరు మారుతోంది. నేను ఒక బ్రష్ మారుతోంది వెబ్. ఆపై నేను 22 పెట్టటం చేస్తున్నాను. DAVID మలన్: 22. అద్భుతమైన. సో మరొకసారి. నేను ఇప్పుడు పుష్ వెళుతున్న స్టాక్ 26 లో. స్టీవెన్: Ooh. గోష్ ఓహ్. మీరు నిజంగా గార్డు ఆఫ్ నన్ను ఆకర్షించింది. DAVID మలన్: మీరు కాదు ఈ రాబోయే చూడండి? స్టీవెన్: నేను ఈ రాబోయే చూడలేదు. మేము తిరిగి ప్రారంభ సామర్ధ్యం కుడ్? DAVID మలన్: ఒక మంచి ప్రశ్న. కాబట్టి మేము రకమైన మమ్మల్ని పెయింట్ చేసిన ఇక్కడ ఒక మూలలో. నిజంగా స్టీవెన్ మంచి అవుట్ లేదు మేము ఈ శ్రేణి కేటాయించిన చేసిన ఎందుకంటే స్థిరంగా, కాబట్టి లోపల, మాట్లాడటం డేటా నిర్మాణం. మరియు మేము తప్పనిసరిగా హార్డ్ కోడెడ్ చేసిన అది పరిమాణం మూడు అని. సో మేము పునర్నియోగిస్తాయి కాదు. మేము మేము తిరిగి వెళ్లి అని trays ఒక పాయింటర్ గా కొత్త నిర్వచనం మేము అప్పుడు చేతి మెమరీ malloc ఉపయోగించడానికి. ఎందుకంటే మనం మెమరీ వస్తే malloc ద్వారా కుప్ప, మేము అప్పుడు ఇది ఉచితం కాలేదు. కానీ అది విముక్తి ముందు, మేము అనుకొనుట , మెమరీ పెద్ద భాగం పునర్నియోగిస్తాయి పాయింటర్ అప్డేట్ మొదలగునవి. కానీ ఇప్పుడు కోసం, ఈ నిజంగా ఉంది ఉత్తమ మేము చేయవచ్చు. పుష్ మరియు పాప్ బహుశా వెళ్తున్నారు కొన్ని లోపాన్ని సూచించడానికి కలిగి. సో ఉదాహరణకు, మా అమలు పుష్ ఒక bool తిరిగి ఏ గతంలో నిజమైన, నిజమైన, నిజమైన తిరిగి. కానీ నాలుగో సమయం, అది కలిగి జరగబోతోంది ఉదాహరణకు, తప్పుడు తిరిగి. అన్ని కుడి. చాలా బాగా పూర్తి. అభినందనలు. మీరు నేడు మీ ఒత్తిడి బంతి సాధించారు. [ప్రశంసలను] స్టీవెన్: ధన్యవాదాలు. DAVID మలన్: ధన్యవాదాలు. OK, కాబట్టి ఈ కాదు ఉన్నట్టుగా ముందుకు ఒక అడుగు యొక్క, కుడి? మేము ఈ డేటాను నిర్మాణం వివరించబడింది. ఇది కుడి, బలవంతపు కూడా? కార్యాచరణ వ్యవస్థ ఇష్టం. స్పష్టంగా వెబ్, ఈ వుపయోగించవచ్చు ఇంకా ఇతర అప్లికేషన్లు. కానీ మేము ఒక తెలివితక్కువదని పరిమితి విధమైన వారం రెండు పరిమితులు తిరిగి అక్కడ పరిమాణం శ్రేణుల పరిష్కరిస్తే. కాబట్టి ఒక జంట నిజానికి ఉన్నాయి మార్గాలు మేము ఈ పరిష్కరించడానికి కాలేదు. మేము సాహసోపేతంగా శ్రేణి కేటాయించుటకు కాలేదు నేను చేసిన విధంగా కష్టం కోడింగ్ కాదు ఇక్కడ పూర్తి, కానీ దానికి బదులుగా తిరిగి ప్రకటించారు ఈ, కేవలం స్పష్టమైన ఉండాలి ఈ వంటి ఏదో. Int * trays, నిర్ణయం కాదు ఇంకా ఒక సామర్థ్యం మీద. కానీ నేను ఏదో ఒకచోట స్టాక్ డిక్లేర్ చేసినప్పుడు నా కోడ్ లో, నేను, malloc అని పిలుస్తాము ఒక భాగం యొక్క చిరునామా పొందుటకు మెమరీ, మరియు నేను కేటాయించవచ్చు కాలేదు trays ఆ చిరునామా. ఆపై, ఎందుకంటే అది కేవలం ఒక భాగం యొక్క మెమరీ, నేను చదరపు ఉపయోగించడానికి కొనసాగడం సాధారణ పద్ధతిలో బ్రాకెట్ నొటేషన్. మళ్ళీ, ఈ విధమైన ఉంది ఎందుకంటే ఫంక్షనల్ శ్రేణుల సమానమైన మరియు వచ్చిన మెమరీ రాళ్లను తిరిగి malloc నుండి. మేము ఇతర ఒక చికిత్స చేయవచ్చు పాయింటర్ అంక ఉపయోగించి లేదా చదరపు బ్రాకెట్ నొటేషన్. తద్వారా ఒక విధానం. కానీ ఎలా else మేము ఈ అమలు ఉండవచ్చు అదే డేటా నిర్మాణం, సమర్థవంతంగా? కుడి? మేము కేవలం ఈ పరిష్కారం వంటి నేను భావిస్తున్నాను ఒక వారం క్రితం వంటి సమస్య. ఈ సమస్యకు పరిష్కారం ఏమిటి స్టీవెన్ లోకి నడచి? సో లింక్ జాబితాలు, కుడి. సమస్య మేము పెయింటింగ్ చేస్తున్న ఉంటే కేటాయించడం ద్వారా ఒక మూలలో మమ్మల్ని ముందుగానే చాలా కొద్దిగా మెమరీ లో మేము అప్పుడు ఏదో, బాగా, పరిష్కరించుకోవాలి ఎందుకు ఆ తప్పించుకోకుండా మొత్తంగా జారీ? ఎందుకు కేవలం trays ఒక ఉండాలి ప్రకటించాడు ఒక నోడ్, ergo ఒక లింక్ జాబితా పాయింటర్ ఆపై కేవలం క్రొత్త నోడ్స్ కేటాయించుటకు స్టీవెన్ ఒక సరిపోయే అవసరమైన ప్రతిసారీ డేటా నిర్మాణాన్ని సంఖ్య. సో చిత్రం మార్చడానికి కలిగి ఉంటుంది. ఇది స్వచ్ఛమైన మరియు అవతరిస్తుంది కాదు మూడు ints కేవలం వ్యూహం సాధారణ. ఇప్పుడు అది ఒక ఒక పాయింటర్ చేస్తాడు struct, మరియు ఆ struct కానుంది ఒక Int మరియు ఒక రాబోయే పాయింటర్ కలిగి. ఆ పాయింటర్ ద్వారా దారి జరగబోతోంది మరో struct కు మరో struct. సో చిత్రం నిజానికి చేస్తాను ఒక బిట్ messier పొందుటకు. మరియు మేము బాణాలు వేయడం ఉండేదాన్ని కలిసి ప్రతిదీ. కానీ ఎందుకంటే, కుడి, మంచిది మేము ఈ ఎలా చేయాలో చూసిన. మరియు ఒకసారి మీరు సౌకర్యవంతమైన పొందుటకు ఒక అనుసంధాన వంటి అమలు ఏదో మీరు ఉంటుంది ఇది జాబితా, మీరు ఒక హాష్ పట్టిక అమలు ఎంచుకోండి p-సెట్ 6 ప్రత్యేక కూర్పికం, మీరు చేయవచ్చు ఒక బిల్డింగ్ బ్లాక్, లేదా ఒక దానిని ఉపయోగించడానికి పదార్ధం, లేదా స్క్రాచ్ లో ఒక, మాట్లాడటం విధానం, మీరు, మీరు చాలు ఏదో మీ సొంత పజిల్ ముక్క రూపొందించినవారు మీరు మళ్లీ మళ్లీ ఆ. సో tradeoffs, కానీ సమర్ధమైన పరిష్కారాలు మేము నిజానికి చూసిన ఆ. సో చాలా తరచుగా, మీరు ఈ ప్రతి చూడండి సంవత్సరం లేదా రెండు ఉన్నప్పుడు ఆపిల్ విడుదలలు కొత్త, మరియు అన్ని వెర్రి ప్రజలు ఏదో ఆపిల్ యొక్క వెలుపల లైన్ అప్ వారి ఉపాంత కొనుగోలు నిల్వ హార్డ్వేర్ న అప్గ్రేడ్. నేను చెపుతాను, ఎందుకంటే, సరే నేను ఆ ప్రజలు ఒకటి వద్ద. సో ఎలాంటి డేటా నిర్మాణం ఈ రియాలిటీ ప్రతిబింబిస్తుంది? సరే, ఇది ఒక క్యూ, ఒక లైన్ కాల్ చెయ్యనివ్వండి. అందువలన బ్రిటిష్ ఇది సాధారణంగా ఒక అంటారని క్యూ ఏమైనప్పటికీ, కాబట్టి అది ఒక nice పేరు యొక్క. మరియు ఒక క్యూ రెండు మేము ఒక వరుసలోని కాల్ చేస్తాము మద్దతు కమిటీ ఆపరేషన్ మరియు ఒక dequeue ఆపరేషన్, ఇది ఒకే రకంగా ఉంటాయి పుష్ మరియు పాప్ ఆత్మ. ఇది వివిధ కేవలం విధమైన వార్తలు సమావేశం, మేము ఈ కాల్ చేస్తున్నారు. కానీ ఏదో వరుసలోని జోడించండి అర్థం లేదా డేటా నిర్మాణంతో ఇన్సర్ట్. Dequeue అది తొలగించడానికి అర్థం. కానీ ఒక స్టాక్ ఒక ఎల్ఐఎఫ్ఓ ఆర్ధిక డేటా చెప్పవచ్చు నిర్మాణం, ఒక క్యూ, ఒక మొదటి లో ఉంది డేటా నిర్మాణం అవ్ట్ మొదటి. మీరు లైన్ లో మొదటి వ్యక్తి, అయితే మీరు పొందుటకు మొదటి వ్యక్తి ఉంటుంది బయటికి మరియు మీ కొత్త పరికరం కొనుగోలు. ఈ ప్రజలు ఎలా నిరాశగా ఉంటుంది ఇమాజిన్ ఆపిల్ బదులుగా స్టాక్ ఉపయోగించడం, కోసం ఉదాహరణకు, ఎంచుకోవడం అమలు మీ కొత్త బొమ్మ అప్. సో క్యూలు ఖచ్చితంగా, అర్ధవంతం, మరియు మేము అన్ని రకాల ఆలోచించవచ్చు అప్లికేషన్లు, బహుశా, క్యూలు కోసం, మీరు సౌందర్యము కావలసిన ముఖ్యంగా. సో ఎలా మేము ఈ అమలు ఉండవచ్చు డేటా నిర్మాణం వలె? Well, నేను మేము వాటిని ప్రతిపాదించారు అది ఈ విధంగా చేయాలి. నేను ఇప్పుడు సంఖ్యలు కలిగి వెళుతున్న. కాబట్టి మేము అది సాధారణ మరియు ఉంటాం తప్పనిసరిగా trays పరంగా మాట్లాడటానికి. ప్రజలు సంపాదించిన కేవలం సంఖ్యలు ఆ. సామర్థ్యం మళ్ళీ, కానుంది, పరిష్కరించడానికి ఉండగల మొత్తం వ్యక్తుల సంఖ్య ఈ లైన్, మూడు లేదా ఇతర సంసార విలువ. కానీ నేను ట్రాక్ అవసరం ప్రతిపాదించారు యొక్క పరిమాణం మాత్రమే క్యూ, అది ఎన్ని విషయాలు. సో పరిమాణం ప్రస్తుత పరిమాణం, సామర్థ్యం గరిష్ట పరిమాణం. కేవలం మళ్ళీ, నామావళి సాంప్రదాయకంగా. ఎందుకు నేను ఒక అదనపు Int లోపల అవసరం లో ఎవరు ట్రాక్ ఒక క్యూ యొక్క లైన్ ముందు? ఎందుకు నేను ఈ విషయంలో అలా చేయాలి? బాగా, ఈ చిత్రాన్ని ఎలా మార్చడానికి వెళుతున్న? నేను బహుశా చాలా మళ్లీ మళ్లీ ఈ చిత్రం. నాకు ముందుకు వెళ్లి ఇక్కడ తుడిచేయలేనని లెట్. మేము ఈ ఒక కొద్దిగా ఇస్తాము ఇక్కడ వివిధ పేరు అప్. 17 వదిలించుకోవటం లెట్ యొక్క, వీలు యొక్క వదిలించుకోవటం 9, యొక్క 3 వదిలించుకోవటం వీలు. మరియు యొక్క మరొక విషయం జోడించడానికి అనుమతిస్తుంది. నేను ట్రాక్ అవసరం ప్రతిపాదించారు జాబితా ముందు, ఇది కేవలం అలాగే ఒక Int అవతరిస్తుంది. మరియు మేము అది సాధారణ ఉంచండి చేయబోతున్నామని. ఇప్పుడు ఎటువంటి సంబంధం జాబితా. మేము చేయబోతున్నామని అంగీకరించాడు చేస్తాము ఈ పరిమితిని వ్యతిరేకంగా అప్ bump. కానీ నేను చూడండి ఏమి అనుకుంటున్నారు ఈ సమయం జరిగే? నేను ముందుకు వెళ్లి మొదటి సో ఊహించు వ్యక్తి లైన్ లో వస్తుంది, మరియు ఇది సంఖ్య 9 యొక్క. మేము ఒత్తిడి బంతుల్లో ఉన్నాయి. నేను చెప్పే, రెండు లేదా మూడు ప్రజల దొంగిలిస్తారు? ఒక, రెండు, మూడు? అప్ న వస్తాయి. కుడి ముందు నుండి, ఎందుకంటే మేము ఈ ఒక శీఘ్ర చేస్తాము. మీరు ప్రతి ఇప్పుడు అవతరిస్తుంది ఆపిల్ వద్ద లైన్ లో అభిమాని బాలుడు. మీరు ఆపిల్ హార్డ్వేర్ స్వీకరించడం కాదు ఈ అయితే చివరిలో. అన్ని కుడి. మీరు సంఖ్య 9 ఉన్నాము కాబట్టి, మీరు 17, సంఖ్య 22. ఈ వంటి, అనియత సంఖ్యలు విద్యార్థి ID లేదా whatnot. మరియు కేవలం ఒక క్షణం లో, యొక్క ప్రారంభించండి విషయాలు జోడించడం ప్రారంభించడానికి. మరియు నేను ఇక్కడ ఈ సమయం బోర్డు అమలు చేస్తాము. సో ఈ సందర్భంలో, నేను initialized చేసిన ముందు ఉండాలి - నేను నిజానికి నిజంగా పట్టించుకోను ఏమి పరిమాణం సున్నా ఎందుకంటే ముందు, ఉంది. సో ఈ అలాగే కేవలం వాటిని ఒక ప్రశ్న గుర్తు ఉంటుంది. ఈ అన్ని ప్రశ్నార్థకాలుగా ఉన్నాయి. కాబట్టి ఇప్పుడు మేము నిజానికి కొన్ని చూడటానికి చేస్తాము ప్రజలు స్టోర్ వద్ద సరిచేసుకోవడం. సో సంఖ్య 9 ఉంటే, మీరు మొదటి ఒకరు అక్కడ AM 5, ముందుకు వెళ్ళి, ఒకే లేదా ముందు రాత్రి. OK. కాబట్టి ఇప్పుడు 9 ఇక్కడ ఉంది. సో 9 జాబితా ముందు ఉంది. నేను ముందుకు వెళ్లి అప్డేట్ వెళుతున్న ఈ ప్రస్తుత సమాచార పరిమాణం నిర్మాణం, ఇకపై 0 కాదని కానీ 1 ఉండాలి. నేను 9 ఉంచాలి వెళుతున్నాను జాబితా ముందు. నాకు ముందుకు వెళ్లి స్క్రీన్ టోగుల్ లెట్ కాబట్టి మేము ఇక్కడ మాకు గత చూడగలరు. మరియు ఇప్పుడు నేను ఏమి అనుకుంటున్నారు ముందు ఉంచాలి? నేను ట్రాక్ వెళుతున్న అని ప్రస్తుతం క్యూ ముందు నగర 0 లో ఉంది. ఏమి తదుపరి ఏమి జరుగుతుందో ఎందుకంటే? Well, నేను వరుసలోని ఇప్పుడు ఊహించు 17 అలాగే. సో అక్కడ లైన్ లో హాప్. మళ్ళీ, తలుపు యొక్క విధమైన స్టోర్ ఇక్కడ అవతరిస్తుంది. కాబట్టి ఇప్పుడు నేను 17 జోడించిన. మరియు ఈ కుర్రాళ్ళు నిరోధించడాన్ని ఉన్నప్పుటికీ సరే తెరపై,, మేము ఇక్కడ చూడండి ఎందుకంటే. క్షమించాలి. ప్రేక్షకులు: మేము తరలించవచ్చు - DAVID మలన్: తోబుట్టువుల సంఖ్య, ఆ సరే. అది అప్ భారీ వార్తలు. సో 17 లోపల క్యూ యొక్క ఇప్పుడు. నేను ఇది నవీకరించవలసి ఉంది ఖాళీలను ఇప్పుడు అయితే? OK, ఖచ్చితంగా పరిమాణం. మరియు ఎలా ముందు గురించి? OK, ఏ. ముందు, మార్చకూడదు ఎందుకంటే ఒక స్టాక్ కాకుండా, మేము సౌందర్యము నిర్వహించడానికి కావలసిన. 9 మొదటి వచ్చింది కనుక, మేము 9 కావలసిన లైన్ ముందుగా ఉండాలి మరియు స్టోర్ లోకి. నిజానికి, యొక్క ఆ చూద్దాము. మేము 22 ఇన్సర్ట్ ముందు, చేసుకుందాం ముందుకు వెళ్ళి dequeue 9. మీ పేరు ఏమిటి మళ్ళీ? ప్రేక్షకులు: జేక్. DAVID మలన్: జేక్ వెళ్తున్నారు ఇప్పుడు dequeued వుంటుంది. సో మీరు స్టోర్ లోకి నడవడానికి పొందుటకు. మరియు నటిస్తారు స్టోర్ అక్కడ ఉంది. కాబట్టి ఇప్పుడు అవసరం ఏమి - dit-dit-dit! ఇప్పుడు ఏమి కావాలి? డిజైన్ నిర్ణయం. ఐతే ఒక చెడు స్వభావం, కానీ - మీ పేరు ఏమిటి మళ్ళీ? ప్రేక్షకులు: డేవిడ్. DAVID మలన్: డేవిడ్. సో డేవిడ్ ఏం చేసావ్? అతను డేటా పరిష్కరించడానికి యొక్క క్రమం ప్రయత్నిస్తున్నప్పుడు తన నగర నిర్మాణం మరియు తరలింపు జేక్ మాజీ నగర లోకి. మేము సిద్ధపడిన ఉంటే ఆ జరిమానా వార్తలు ఒక వంటి అంగీకరించి అమలు వివరాలు. కానీ మొదటి, యొక్క డేటా అప్డేట్ వీలు మేము నిర్మాణం అలా ముందు. నేను అన్ని ఆలోచన ఇష్టపడటం లేదు ఎందుకంటే ప్రజలు ఈ లైన్ లో బదిలీ. డేవిడ్ అది ఒకవేళ ఎటువంటి పెద్ద ఒప్పందం వార్తలు ఒక అడుగు, కానీ మళ్ళీ, తిరిగి అనుకుంటున్నాను మేము ఎనిమిది స్వచ్ఛందంగా కలిగి చేసినప్పుడు వేదిక మేము చొప్పించడం వంటి చేసిన మేము ప్రారంభించేందుకు పేరు విధమైన, చుట్టూ ప్రతి ఒక్కరూ కదిలే. కుడివైపు, ఖరీదైన వచ్చింది? పెద్ద O గురించి నాకు భయంతో మూల దాగుకొను చేస్తుంది n యొక్క, n యొక్క పెద్ద O మళ్ళీ స్క్వేర్డ్. ఇది వంటి ఫీలింగ్ లేదు ఒక ఆదర్శ ఫలితం. సో యొక్క ఈ అప్డేట్ వీలు. సో క్యూ యొక్క పరిమాణం ఇకపై 2. ఇది ఇప్పుడు కేవలం 1 యొక్క. కానీ ఇప్పుడు ఏదో అప్డేట్ చేయవచ్చు నేను ముందు అప్డేట్ లేదు, జాబితా ముందు. నేను చెప్పగల్గినవి, ఆ నగర 1? కాబట్టి ఇప్పుడు మేము, ఇక్కడ చెత్త విలువ కలిగి చెత్త ఇక్కడ విలువ, మరియు డేవిడ్ ఈ చెత్త మధ్యలో. కానీ డేటా నిర్మాణం ఇప్పటికీ చెక్కుచెదరకుండా ఉంది. వాస్తవానికి, నేను కూడా అవసరం లేదు జేక్ మాజీ సంఖ్య మార్చడానికి 9, ఎవరు పట్టించుకుంటారు ఎందుకంటే. నేను ఇప్పుడు కావలసినంత సమాచారం నేను అక్కడ యొక్క ఒక వ్యక్తి లో తెలిసిన పరిమాణం ఈ క్యూ. మరియు నాకు తెలుసు ఆ వ్యక్తి నగర 1, 0 ఉంది. నేను లెక్కింపు కాదు. అలాగే 1 కాబట్టి. సో డేటా నిర్మాణం ఇంకా సరే. బాగా, ఏమి తదుపరి జరుగుతుంది? లెట్స్ వరుసలోని - మీ పేరు ఏమిటి? ప్రేక్షకులు: కాల్లెన్. DAVID మలన్: కాల్లెన్. యొక్క ఒక కాల్లెన్ వరుసలోని లెట్, మరియు 22 క్యూ లో ఇప్పుడు. కాబట్టి ఇప్పుడు ఇక్కడ మార్చడానికి ఉంది ఏమి? ముందు వెళ్ళడం లేదు ఖచ్చితంగా, మార్చడానికి. సైజు మళ్ళీ 2 మార్చడం కానుంది. మరియు 22 ఇక్కడ ముగుస్తుంది, 9, ఇప్పటికీ ఉంది కానీ అది ఒక వార్తలు ఇప్పుడు చెత్త విలువ. ఇది కేవలం జాక్ గత శేషం వార్తలు. కాబట్టి ఇప్పుడు జరిగితే ఏ నేను డేవిడ్ dequeue? చివరగా ఆపరేషన్, dequeue డేవిడ్. మేము మారవచ్చు, కానీ నేను లెట్ యొక్క ప్రతిపాదన వీలైనంత తక్కువ పని చేయండి. ఇప్పుడు నా డేటా నిర్మాణం వెళ్తాడు 2 నుండి 1 పరిమాణంలో జరగదు. కానీ క్యూ ముందు ఇప్పుడు 2 అవుతుంది. నేను ఈ సంఖ్యలు మార్చడానికి అవసరం లేదు వారు మీరు ఇంకా, ఎందుకంటే కేవలం చెత్త విలువలు. కానీ ఇప్పుడు ఏమి జరుగుతుంది? నేను, 26 నాకు వరుసలోని ఊహించు? నేను ఇక్కడ చెందిన నేను భావిస్తున్నాను. నేను వరుసలో ఉండటం వెబ్. నేను రకమైన ఇక్కడ చెందినవి. మరియు మీరు చాలా ఏమి అయినప్పటికీ వేదికపై దృష్టి ఈ అభినందిస్తున్నాము, మేము గది పుష్కలంగా కలిగి ఎందుకంటే, నేను తప్పక ఇక్కడ నిలబడి కాదు, ఎందుకు? ప్రేక్షకులు: మీరు హద్దులు లేదు. DAVID మలన్: రైట్. నేను హద్దులు దాటింది రెడీ. నేను దాటి ఇండెక్స్ చేసిన ఈ శ్రేణి యొక్క సరిహద్దులు. నేను నిజంగా ఒకటి ఉండాలి మూడు సంభావ్య స్థానాలు. ఇప్పుడు, అక్కడ వెళ్ళడానికి చాలా సహజ వార్తలు? నేను మేము పరపతి ప్రతిపాదించారు ఒక వారం ఒక ట్రిక్. mod ఆపరేటర్లు శాతం. నేను సాంకేతికంగా వద్ద నిలబడి నేను ఎందుకంటే నగర 3, కానీ నేను, 3 mod సామర్థ్యం చేయండి కాబట్టి 3, ఒక శాతం సైన్, 3 - సామర్థ్యం 3 వార్తలు. ఆ ఏమిటి? మిగిలిన సమయంలో ఏమిటి మీరు 3 3 విభజించి? 0. నాకు ఉంచుతుంది కాబట్టి జేక్, జరిగింది ఇది నిజానికి మంచి. కాబట్టి ఇప్పుడు అమలు ఈ విషయం ప్రస్తావించాలి యొక్క ఒక తలనొప్పి ఒక బిట్ ఉంటుంది. ఇది నిజంగా కేవలం ఒక లైన్ తలనొప్పి, కోడ్ యొక్క. కానీ కనీసం ఇప్పుడు చెత్త ఉంది విలువ ఇక్కడ, కానీ రెండు ఉంది ఇక్కడ చట్టబద్ధమైన ints. మరియు నేను ఇప్పుడు మేము చేసిన వాదించారు మేము చాలా కాలం గా చెయ్యాల్సిన వేటి మేము ఏ జేక్ మార్చడానికి విలువ 26 చెప్పవచ్చు. మేము ఇప్పుడు ఇంకా కావలసినంత సమాచారం ఐక్యత నిర్వహించడానికి ఈ డేటాను నిర్మాణం. మేము ఇంకా రకమైన అదృష్టం అనే ఉన్నప్పుడు మేము నాలుగు లేదా ఎక్కువ మొత్తం ఇన్సర్ట్ అనుకుంటున్నారా అంశాలు, కానీ నేను కనీసం తయారు అందంగా ఉంటుంది ఈ స్థిరంగా సమర్థవంతంగా ఉపయోగించడం సమయం, నిజానికి. నేను తరలించింది ఆందోళన లేదు డేవిడ్ యొక్క వంపు, ప్రతివారు ఉంది. స్టాక్స్ లో ఏవైనా ప్రశ్నలు, లేదా ఈ క్యూ? ప్రేక్షకులు: కారణం మీకు తెలిసిన, కనుక మీరు పరిమాణం అవసరం ఒక వ్యక్తి కలిగి ఉన్న? DAVID మలన్: సరిగ్గా. నేను అర్రే యొక్క పరిమాణం తెలుసుకోవాలి నేను ఎలా తెలుసుకోవాలి ఎందుకంటే ఈ విలువలు చాలా న్యాయబద్ధమైన, చాలు ఎక్కడ నేను పొందవచ్చు తదుపరి వ్యక్తి. సరిగ్గా. పరిమాణం - నిజానికి, మేము ఇంకా ఈ నవీకరణ లేదు. నేను 26 లో వచ్చేలా జోడించారు. పరిమాణం, ప్రస్తుతం 1, కాని 2. కాబట్టి ఇప్పుడు ఈ నిజానికి నాకు సహాయపడుతుంది జాబితా తల, ఇది 0 కాదు, కాదు 1, కాని 2. జాబితా ముందు నిజానికి సంఖ్య 22. అతను మొదటి లో వచ్చింది, అందువలన అతను ఎందుకంటే నాకు ముందు స్టోర్ ప్రవేశించడానికి, అయినప్పటికీ దృష్టి నేను నిలబడి నేను దగ్గరగా స్టోర్ కు. అన్ని కుడి? ఈ కుర్రాళ్ళు ప్రశంసలను ఒక రౌండ్ మరియు మేము వాటిని అక్కడ నుండి తెలియజేస్తాము. [ప్రశంసలను] DAVID మలన్: నేను వీలు కాలేదు మీరు ట్రే ఉంచేందుకు. మేము ఏమవుతుంది చూడగలిగారు మీకు కావలసిన, కానీ ఉండవచ్చు కాదు. అన్ని కుడి. సో ఇప్పుడు మాకు వదిలి లేదు? బాగా, ఒక ఉందని నాకు ప్రతిపాదించారు వీలు మేము అనుకొనుట కొన్ని ఇతర డేటా నిర్మాణాలు మా టూల్ కిట్ జోడించడం మొదలు నిజానికి చాలా చాలా సంబంధిత విధంగా మేము వెబ్ stuff ప్రవేశిస్తాడు. మళ్ళీ, కనెక్షన్ రకమైన ఇది రూపంలో చెట్ల DOM, పత్రం అని ఏదో ఆబ్జెక్ట్ మోడల్. కానీ మేము మరింత చూస్తారు దీర్ఘ ముందు. నాకు definitionally ప్రతిపాదించారు లెట్ మేము ఇప్పుడు మీరు మీకు తెలిసిన ఏమి చెట్టు కాల్ ఒక కుటుంబం చెట్టు, మీరు ఇక్కడ మరింత కొన్ని పూర్వీకులు కలిగి చెట్టు యొక్క మూలాలను. ఒక పితృస్వామ్య లేదా ఒక matriarch చెట్టు యొక్క అగ్రభాగాన. తమ జీవిత భాగస్వామి లేకుండా, ఈ సందర్భంలో. కాని ఇప్పుడు మేము కాల్ చేస్తాము ఏమి కలిగి వ్రేలాడదీయు ఆ నోడ్స్ ఇవి పిల్లలు, ఎడమ పిల్లవాడు లేదా కుడి బాల ఆఫ్, ఇక్కడ వర్ణించిన బాణాలు. ఒక చెట్టు డేటా నిర్మాణం ఇతర పదాలు, లో కంప్యూటర్ లో, ఒక చెట్టు సున్నా ఉంది లేదా మరింత నోడ్స్. అది కనీసం ఒక నోడ్ ఉంటే, ఆ రూట్ అని. దృశ్యపరంగా విషయాలు వార్తలు మేము ఎగువన డ్రా. మరియు ఆ నోడ్, ఏ ఇతర నోడ్ వంటి చెయ్యవచ్చు , సున్నా, ఒకటి, లేదా రెండు, లేదా మూడు కలిగి లేదా అయితే ఎక్కువ మంది పిల్లలు డేటా నిర్మాణం మద్దతు. ఈ సందర్భంలో, రూట్, నిల్వ విలువ ఒకటి, రెండు పిల్లలు, 2 మరియు 3 ఉంది కాబట్టి మేము సాధారణంగా 2 ఎడమ కాల్ పిల్లల మరియు 3 కుడి బాల. మరియు అప్పుడు మేము, 5 6 డౌన్ పొందుటకు, మరియు ఉన్నప్పుడు 7, 6 మధ్య పిల్లల పేరిట. మీరు నాలుగు పిల్లలు, కలిగి ఉంటే కంగారు గెట్స్. కనుక మనం ఆ రకమైన ఉపయోగించి ఆపడానికి మాటలతో సత్వరమార్గం యొక్క. కానీ అది నిజంగా కేవలం ఒక కుటుంబం చెట్టు. మరియు ఇక్కడ ఆకులు ఆ నోడ్స్ ఉన్నాయి తమను సంతానం లేదు. వారు చెట్టు యొక్క దిగువ ఆఫ్ వ్రేలాడదీయు. సో ఎలా మేము ఒక చెట్టు ఆ అమలు ఉండవచ్చు గరిష్టంగా కేవలం ఇద్దరు పిల్లలు? మేము అది ఒక బైనరీ చెట్టు కాల్ చేస్తాము. ద్వి మళ్ళీ ఈ రెండు అర్థం బైనరీ తో వంటి సందర్భంలో,. కావున, సున్నా, ఒకటి కలిగి ఉంటుంది గరిష్టంగా లేదా రెండు పిల్లలు. నేను మేము నోడ్ అమలు ప్రతిపాదించారు చేస్తాము ఒక Int n ఆ నిర్మాణం కోసం, ఆపై రెండు పాయింటర్లు, ఒకటి ఎడమ, ఒక కుడి అని. కానీ ఆ కేవలం nice ఉంటాయి అనియత సమావేశాలు. మరియు మీరు, ఇప్పుడు ప్రత్యేకంగా nice ఏమిటి రకం తో సందర్భానుసారంగా పోరాడింది సూత్రం, లేదా అది భావించారు ఏదైనా నిజంగా ఒక పరిష్కారం, ముఖ్యంగా మీరు చేస్తే మెమరీ రన్నవుట్. మేము డేటా గురించి మాట్లాడటం చేస్తున్నాం ఇప్పుడు ఆ నిర్మాణాలు మరియు అనుమతించే అల్గోరిథంలు మాకు, ప్రయాణించి వాటిని మార్చటానికి సూత్రం లో తిరిగి వస్తుంది హాజరవుతారు మరింత సమగ్ర అందమైన మార్గం లేకపోతే. నేను ప్రతిపాదన ఈ అమలు అవుతుంది ఒక శోధన ఫంక్షన్ యొక్క. రెండు ఇన్పుట్లను ఇవ్వడం - కాబట్టి ఒక బ్లాక్ బాక్స్ ఈ భావిస్తారు. రెండు ఇన్పుట్లను, n, ఒక Int, మరియు ఇచ్చిన ఒక చెట్టు పాయింటర్, ఒక ఒక పాయింటర్ ఒక చెట్టు యొక్క నోడ్, లేదా నిజంగా రూట్, నేను ఈ ఫంక్షన్ తిరిగి వాదన నిజమైన లేదా తప్పుడు, ఆ విలువ n ఈ చెట్టు యొక్క లోపల ఉంది. ఈ బ్లాక్ బాక్స్ లోపల ఏముంది? బాగా, నాలుగు శాఖలు. మొదటి కేవలం తనిఖీ. చెట్టు శూన్య ఉంటే, కేవలం తప్పుడు తిరిగి. ఏ నోడ్ ఉంటే, ఏ n, ఉంది ఏ సంఖ్య ఉంది, కేవలం తప్పుడు తిరిగి. మీరు చూస్తున్న అయితే, n, విలువ ఉంటే కోసం, చెట్టు బాణం n కంటే తక్కువ, మరియు కేవలం స్పష్టమైన ఉండాలి, అది ఏమి అర్థం నేను చెట్టు మరియు బాణం వ్రాయండి సంజ్ఞామానం, n? సరిగ్గా. ఇది dereference అర్థం పాయింటర్ చెట్టు అని. ఆ లోపల పొందుటకు అప్పుడు అక్కడ వెళ్ళి, మరియు నోడ్ మరియు n అనే రంగంలో పొందుటకు. మరియు అప్పుడు నిజమైన n సరిపోల్చండి అది వ్యతిరేకంగా శోధన వెళ్ళిపోయారు. N n విలువ, కంటే తక్కువ ఉంటే చెట్టు నోడ్ లోనే బాగా, ఆ అర్థం ఏమిటి? మొదటి చూపులో ఏమీ అర్థం. కుడి? మీరు ఒక అర్రే ఉన్నప్పుడు కేవలం ఇష్టం విలువలు, మీరు బైనరీ దరఖాస్తు అనుకుంటాను విభజనకు రూపంగా అన్వేషణ మరియు ఆక్రమించేందుకు. కానీ మేము ఏమి ఊహ అవసరం లేదు బైనరీ శోధన అన్ని వద్ద పని కోసం ఫోన్ బుక్ మరియు ముందు ఉదాహరణలు? వేరు ఎలా. సో యొక్క చెట్టు యొక్క నిర్వచనం శుద్ధి వీలు ఇక్కడ ఇది వాటిని ఒక చెట్టు, కాదని పిల్లలు ఏ ఉన్నాయి. కేవలం ఒక బైనరీ చెట్టు, ఇది చెయ్యవచ్చు గరిష్టంగా 0, 1, లేదా 2 కలిగి. కానీ ఒక బైనరీ శోధన చెట్టు, లేదా BST, వంటి ఇది కేవలం ఒక విధంగా ఒక ఫాన్సీ మార్గం ఇటువంటి బైనరీ చెట్టు ప్రతి నోడ్ యొక్క ఎడమ బాల, ప్రస్తుతం ఉంటే, ఉంది నోడ్ కంటే తక్కువగా. మరియు ప్రతి నోడ్ యొక్క కుడి బాల, ప్రస్తుతం ఉంటే, ఎక్కువ నోడ్ తప్ప. సో ఇతర పదాలు లో, మీరు డ్రా ఉన్నాయి చెట్టు అవ్ట్, సంఖ్యలు అన్ని జాగ్రత్తగా దీన్ని ఇష్టపడుతున్నారు సంతులనం తద్వారా ఉంటే మీరు రూటులో 55 కలిగి, 33 వెళ్ళే దాని ఎడమ అది 55 కంటే తక్కువ ఎందుకంటే. 77 దాని కుడి ఎందుకంటే వెళ్ళవచ్చు ఇది 55 కంటే ఎక్కువ ఉంది. కానీ ఇప్పుడు, అదే నిర్వచనం గమనించవచ్చు ఇది నోటితో సంభవించే నిర్వచనం వార్తలు 33 కోసం అమలు చేయాలి. 33 యొక్క ఎడమ బాల, అది కంటే తక్కువ ఉండాలి మరియు 33 యొక్క కుడి బాల, 44, ఉండాలి ఇది కంటే ఎక్కువ ఉంది. సో ఈ ఒక బైనరీ శోధన చెట్టు, మరియు నేను ఒక చిన్న బిట్ ఉపయోగించి, ప్రతిపాదించారు సూత్రం, మేము ఇప్పుడు n వెదుక్కోవచ్చు. N ఆ విలువ n కంటే తక్కువ ఉంటే ప్రస్తుత నోడ్, నేను వెళ్ళి వెళుతున్న ముందుకు మరియు రౌడీ, మాట్లాడటానికి, మరియు కేవలం కు సమాధానం ఉంది సంసార తిరిగి న n కోసం శోధించడం చెట్టు యొక్క ఎడమ బాల. మళ్ళీ గమనించవచ్చు, ఈ ఫంక్షన్ ను ఒక నోడ్ స్టార్, ఒక అంచనా ఒక నోడ్ కు పాయింటర్. సో తప్పనిసరిగా నేను చెట్టు లాగే చేయవచ్చు దారి తీస్తుంది ఇది బాణం ఎడమ, నాకు మరొక నోడ్ కు. కానీ ఆ నోడ్ ఏమిటి? బాగా, ఈ ప్రకటన ప్రకారం, ఎడమ తద్వారా కేవలం, కేవలం ఒక పాయింటర్ గా నేను శోధన ఫంక్షన్ కు ప్రయాణిస్తున్న వెబ్ అర్థం వేరే పాయింటర్, అవి ప్రాతినిధ్యం ఒక నా ఎడమ పిల్లల చెట్టు. సో ఈ సందర్భంలో, పాయింటర్ ఉంటే, 33 ఈ మా నమూనా ఇన్పుట్ ఇంతలో, ఉంది n వద్ద విలువ n కంటే ఎక్కువ చెట్టు ప్రస్తుత నోడ్, అప్పుడు నేను ఇతర ముందు మరియు రౌడీ వెళ్ళడానికి వెళ్ళడం దిశ మరియు కేవలం చెప్పటానికి, నేను లేదు ఈ విలువ n చెట్టు లో ఉంటే తెలుసు, కానీ ఉంటే నాకు తెలుసు, ఇది డౌన్ మై కుడి శాఖ, మాట్లాడటానికి. సో నాకు తిరిగి సంభవించేలా అన్వేషణ కాల్ చెయ్యనివ్వండి, మళ్లీ n ప్రయాణిస్తున్న, కానీ ఒక లో ప్రయాణిస్తున్న నా కుడి పిల్లల పాయింటర్. ఇతర మాటలలో, నేను ప్రస్తుతం రెడీ ఉంటే 55 మరియు నేను 99 చూస్తున్నాను, నాకు తెలిసి 99 నేను దెబ్బతిన్నాయి కాబట్టి కేవలం వంటి, 55 కంటే ఎక్కువ ఫోన్ బుక్ వారాల క్రితం మరియు మేము కుడి వెళ్ళింది, అదే విధంగా మనం ఇక్కడే వెళ్ళడానికి వెళ్ళడం. ఇది నా కుడి వద్ద ఉంటే మరియు నేను తెలియదు బాల, మరియు అది కాదు, 77 ఉంది, కానీ నేను ఆ దిశలో తెలుసుకుంటారు. నేను, నా కుడి శిశువు మీద శోధన కాల్ 77, మరియు నుండి శోధన సంఖ్య బయట అక్కడ ఉంటే ఈ అనియత లో 99 ఉదాహరణకు అక్కడ నిజానికి. వేరే ఆఖరి వ్యాజ్యం ఏమిటి? చెట్టు ఉంటే శూన్య ఒక సందర్భంలో. N ప్రస్తుత నోడ్ కంటే తక్కువగా ఉంటే విలువ మరొక సందర్భంలో. N ప్రస్తుత కంటే ఎక్కువ ఉంటే నోడ్ యొక్క విలువ ఒక మూడవ కేసు. నాల్గవ మరియు ఆఖరి వ్యాజ్యం ఏమిటి? నేను, మేము కేసులు బయటకు భావిస్తున్నాను? ఇది n ఉన్న ఉండాలి నేను రెడీ ప్రస్తుత నోడ్. నేను ఈ సమయంలో 55 కోసం శోధన వెబ్ కనుక కథ, ఆ శాఖ చెట్టు నిజమైన తిరిగి. సో వాట్ ఇక్కడ ఆసక్తికరంగా అని మేము నిజానికి, వారాల కాకుండా గతంలో, మేము రకమైన రెండు బేస్ కేసులు ఉన్నాయి. మరియు వారు అవసరం లేదు ఎగువన అన్ని ఉంటుంది. టాప్ ఒక బేస్ సందర్భంలో ఎందుకంటే ఉంటే చెట్టు శూన్య ఉంది, లేదు ఉంది. కేవలం ఒక హార్డ్ కోడెడ్ తిరిగి తప్పు విలువ. దిగువన శాఖ విధమైన ఉంది డిఫాల్ట్, అనగా మేము తనిఖీ ఉంటే అది ఉండాలి ఉంటే శూన్య, మేము తనిఖీ చేసిన ఎడమ, కానీ అది తప్పనిసరి కాదు, మేము చేసిన కుడి ఉండాలి చెక్ చేస్తే, కానీ ఉండకూడదు, స్పష్టంగా ఉండాలి కుడి ఇక్కడ మేము ఉన్నాయి. ఒక బేస్ సందర్భంలో ఆ. రెండు పునరావృత సందర్భాల్లో ఉంది మధ్యలో అక్కడ ఉంచిన. కానీ నేను వ్రాసిన ఉండవచ్చు ఈ క్రమంలో. నేను ఎటువంటి సహజ భావించాడు ఆలోచన మొదటి ఒక సాధ్యం లోపం కోసం తనిఖీ, ఎడమ తనిఖీ, అప్పుడు, కుడి తనిఖీ మీరు కణుపు వద్ద ఉన్నట్లు ఊహించుకుని మీరు నిజంగానే కోసం చూస్తున్నారా. సో ఎందుకు ఈ ఉపయోగకరంగా ఉంటుంది? కనుక దీనిని మారుతుంది - మరియు నాకు ఒక టీజర్ వెళ్ళు వీలు ఇక్కడ వెబ్ లో వార్తలు. మేము ఒక ఉపయోగించి ఆరంభమవుతుంది చేస్తున్నాం ప్రోగ్రామింగ్ మొదటి వద్ద భాష, అయితే ఒక మార్కప్ భాష. ఆ ఒకటిగా ఒక మార్కప్ భాష కార్యక్రమాలకు ఆత్మ లో ఇటువంటి భాష, అయితే ఇది మీరు ఇవ్వాలని లేదు సామర్థ్యం తార్కికంగా మీ వ్యక్తపరచటానికి. ఇది మాత్రమే మీరు సామర్థ్యాన్ని అందిస్తుంది నిర్మాణాత్మకంగా మీ వ్యక్తం. ఎక్కడ మీరు ఏదో చాలు అనుకుంటున్నారు పేజీలో వెబ్ పేజీ? ఏ రంగు మీరు చేయాలనుకుంటే లేదు? ఏ ఫాంట్ పరిమాణం మీరు చేయాలనుకుంటే లేదు? ఏమి పదాలు నిజానికి మీరు వెబ్ పేజీలో మీరు? తద్వారా ఒక మార్కప్ భాష. కానీ అప్పుడు మేము చాలా త్వరగా పరిచయం చేస్తాము ఒక పూర్తి స్థాయి ఇది జావాస్క్రిప్ట్, భాష ప్రోగ్రామింగ్. పదము ప్రదర్శన పోలి సి, కానీ కొన్ని ఉంటుంది nice, మరింత శక్తివంతమైన, మరింత యూజర్ ఫ్రెండ్లీ లక్షణాలు. మరియు ఈ సమయంలో చిరాకులను ఒకటి సెమిస్టర్ లో పాయింట్ మేము చేస్తాము అని త్వరలో చాలా తక్కువ స్పెల్లర్ అమలు ఇతర భాషలు ఉపయోగించి లైన్స్ ఆఫ్ కోడ్ సి కూడా అనుమతిస్తుంది కంటే, కానీ కారణం యొక్క కోసం మేము వెంటనే అర్థం వస్తుంది. ఈ మొదటి వెబ్ పేజీ ఉంటుంది. ఇది పూర్తిగా అంశం ఉంటుంది మేము మొదటి. ఇది కేవలం ప్రపంచ హలో, పలుకును. కానీ మీరు ఎప్పుడూ చూడలేదు ఉంటే ముందు, ఈ, ఒక HTML హైపర్టెక్స్ట్ మార్కప్ లాంగ్వేజ్. మీరు ఒక నిర్దిష్ట మెనూ ఐచ్చికమును వెళ్ళండి ఉంటే ఏ వెబ్ పేజీలో చాలా ఏ బ్రౌజర్, ఇంటర్నెట్, మీరు HTML చూడగలరు కొన్ని ప్రజలకు వ్రాసాడు ఆ వెబ్ పేజీ తయారు. మరియు అది బహుశా వంటి అనిపించడం లేదు సంక్షిప్త లేదా ఈ వీలైనంత చక్కగా. కానీ ఈ నమూనా అనుసరించే ఓపెన్ బ్రాకెట్లలో మరియు శ్లాష్లు మరియు అక్షరాలు మరియు శక్తివంతమైన సంఖ్యలు. నేను మీకు ఒక టీజర్ ఇవ్వాలని ఇష్టం ఆలోచన మీరు చెయ్యగలరు ఏమి CS50 చేజిక్కించుకున్న తర్వాత. నాకు cs.harvard.edu / రాబ్ వెళ్ళండి లెట్, మా సొంత రాబ్ బౌడెన్ యొక్క హోమ్. అతను మాకు ఈ విషయం. సో మీరు వెంటనే అలా చేయగలరు. మరియు కూడా, మీరు ఏమి విన్న ఈ ఉదయం - మీరు ఈ ఉదయం విన్న ఏమి - [చిట్టెలుక DANCE MUSIC] - You'll ఈ చేయగలరు. ఆ బుధవారం మాకు పెట్టెలు. మేము మీరు చూస్తారు. [చిట్టెలుక DANCE MUSIC] DAVID మలన్: తదుపరి CS50 వద్ద -