1 00:00:00,000 --> 00:00:10,982 2 00:00:10,982 --> 00:00:11,940 डेविड Malan: सब ठीक है. 3 00:00:11,940 --> 00:00:16,470 तो इस CS50 है, और यह है अब सप्ताह में तीन की शुरुआत. 4 00:00:16,470 --> 00:00:19,960 >> अब तक, हम है ऊपर तो सी में प्रोग्राम लिख दिया 5 00:00:19,960 --> 00:00:23,210 कि एक छोटे से देखो यहाँ कुछ इस तरह. 6 00:00:23,210 --> 00:00:25,470 इसलिए हम एक जोड़े के लिए मिल गया है तेज शीर्ष पर शामिल है. 7 00:00:25,470 --> 00:00:28,490 हम शून्य,, int मुख्य मिल गया है, और तो कुछ बीच में ऐसा करने के लिए, 8 00:00:28,490 --> 00:00:30,590 अंदर कोड के कुछ सा उस समारोह का. 9 00:00:30,590 --> 00:00:34,170 लेकिन महत्वपूर्ण तथ्य यह है कि कर दिया गया है हम यहां शून्य कह रहा हूँ. 10 00:00:34,170 --> 00:00:39,320 तो शून्य, इस समय के सभी निर्दिष्ट इस कार्यक्रम, जब चलने वाले, 11 00:00:39,320 --> 00:00:41,300 केवल अपने नाम के माध्यम से चलाया जा सकता है. 12 00:00:41,300 --> 00:00:46,330 आप किसी भी अन्य शब्द टाइप नहीं कर सकते हैं या कार्यक्रम का नाम जब बाद संख्या 13 00:00:46,330 --> 00:00:46,830 यह चल रहा है. 14 00:00:46,830 --> 00:00:51,200 तो, उदाहरण के लिए कार्यक्रम, थे हैलो नामक एक फ़ाइल में संकलित, 15 00:00:51,200 --> 00:00:53,480 आप ./hello कर सकता है, लेकिन यह बात है. 16 00:00:53,480 --> 00:00:56,750 >> एक ही तरीका है कि आप सकता है इस कार्यक्रम के लिए इनपुट प्रदान 17 00:00:56,750 --> 00:00:57,960 एक समारोह बुला कर रहा है. 18 00:00:57,960 --> 00:00:59,790 उदाहरण के लिए, क्या समारोह हम इस प्रकार अब तक का उपयोग किया गया है 19 00:00:59,790 --> 00:01:00,950 उपयोगकर्ता से इनपुट पाने के लिए? 20 00:01:00,950 --> 00:01:02,117 >> दर्शक: स्ट्रिंग जाओ. 21 00:01:02,117 --> 00:01:04,700 डेविड Malan: स्ट्रिंग मिलता है, या पूर्णांक मिलता है, या आप दूसरों को देखा है, 22 00:01:04,700 --> 00:01:07,630 आप उन्हें अभी तक उपयोग नहीं किया है, भले ही जैसे, लंबे और की तरह मिलता है. 23 00:01:07,630 --> 00:01:09,380 लेकिन लगता है कि हम वास्तव में शुरू करना चाहते हैं 24 00:01:09,380 --> 00:01:12,760 थोड़ा अधिक कर रहे हैं कि लेखन कार्यक्रमों सच कहूँ तो, एक छोटे से अधिक, बहुमुखी, और 25 00:01:12,760 --> 00:01:15,090 आप है कि आदेशों की तरह उम्मीद है, मिल रहा, 26 00:01:15,090 --> 00:01:16,550 एक छोटा सा के आदी. 27 00:01:16,550 --> 00:01:18,560 सीडी अंतरिक्ष ड्रॉपबॉक्स तरह. 28 00:01:18,560 --> 00:01:20,800 यह, ज़ाहिर है, परिवर्तन आपके निर्देशिका, यह सोचते हैं 29 00:01:20,800 --> 00:01:23,590 आप जॉन हार्वर्ड के घर में रहे निर्देशिका, अपने ड्रॉपबॉक्स फ़ोल्डर में. 30 00:01:23,590 --> 00:01:27,380 इस बीच, इस तरह एक आदेश , pset2 नामक एक नई निर्देशिका बनाता है 31 00:01:27,380 --> 00:01:30,290 हो सकता है आप के रूप में पहले से ही या जल्द ही समस्या के लिए दो सेट. 32 00:01:30,290 --> 00:01:33,970 बनाओ नमस्कार, ज़ाहिर है, एक आदेश है कि हैलो नामक एक कार्यक्रम बनाता है 33 00:01:33,970 --> 00:01:35,770 हैलो डॉट सी नामक एक फ़ाइल से. 34 00:01:35,770 --> 00:01:39,140 और इनमें से प्रत्येक में मामलों, अब, हम लिया है 35 00:01:39,140 --> 00:01:43,620 तथाकथित पर एक तर्क प्रदान कमांड लाइन, निमिष शीघ्र, 36 00:01:43,620 --> 00:01:48,540 कि बनाने जानता है तो क्या हुआ निर्माण, और इतना करने के लिए कि mkdir बनाने के लिए क्या फ़ोल्डर जानता है, 37 00:01:48,540 --> 00:01:51,110 और इतना है कि सीडी जानता जहां आप जाना चाहते हैं. 38 00:01:51,110 --> 00:01:54,720 लेकिन अब तक, हम कहते रहते कि मुख्य आपकी डिफ़ॉल्ट समारोह, 39 00:01:54,720 --> 00:01:58,500 एक शून्य अभिव्यक्ति है उन कोष्ठकों के अंदर, 40 00:01:58,500 --> 00:02:01,250 जो यह मतलब है कि कोई बहस नहीं हो सकती. 41 00:02:01,250 --> 00:02:03,240 >> तो आज शुरू, क्या हम क्या करने जा रहे हैं 42 00:02:03,240 --> 00:02:06,270 , हम शुरू करने जा रहे है यह भी तरह बातें समर्थन. 43 00:02:06,270 --> 00:02:08,990 वास्तव में, इस मामले में, जो आप आम तौर पर मैन्युअल टाइप नहीं है, 44 00:02:08,990 --> 00:02:11,130 इस कर की गई है हमारे लिए, वहाँ नहीं कर रहे हैं 45 00:02:11,130 --> 00:02:15,840 लेकिन एक एक, दो, तीन अतिरिक्त कार्यक्रम का नाम दिया है के बाद तार 46 00:02:15,840 --> 00:02:16,850 बजना. 47 00:02:16,850 --> 00:02:18,240 तो कैसे हम इस लक्ष्य को हासिल कर सकता हूं? 48 00:02:18,240 --> 00:02:20,260 >> खैर, आज शुरू, हम चाहते हैं कि जिन मामलों में 49 00:02:20,260 --> 00:02:22,855 के माध्यम से इनपुट प्रदान करने के लिए कमांड लाइन तथाकथित, 50 00:02:22,855 --> 00:02:24,980 हम जोड़ने शुरू करने जा रहे हैं यहाँ yellow-- में क्या है 51 00:02:24,980 --> 00:02:30,520 int argc अल्पविराम के साथ शून्य की जगह स्ट्रिंग argv खुला ब्रैकेट बंद कोष्ठक. 52 00:02:30,520 --> 00:02:32,520 अब यह दिलचस्प है कारणों की एक जोड़ी के लिए. 53 00:02:32,520 --> 00:02:35,690 एक, यह हमें लिखने जा रहा है एक छोटे से अधिक गतिशील हैं कि कार्यक्रम. 54 00:02:35,690 --> 00:02:37,570 लेकिन, अधिक compellingly, इसे खोलने के लिए जा रहा है 55 00:02:37,570 --> 00:02:40,340 के रूप में अब एक बातचीत क्या सरणियों कर सकते हैं वास्तव में 56 00:02:40,340 --> 00:02:43,300 क्या एक स्ट्रिंग के लिए इस्तेमाल किया जा वास्तव में हुड के नीचे है, 57 00:02:43,300 --> 00:02:47,320 अगले सप्ताह तक हम डाइविंग शुरू जब मशीन है के रूप में कैसे भी गहरा में 58 00:02:47,320 --> 00:02:48,590 इस सामान के सभी काम कर रही है. 59 00:02:48,590 --> 00:02:51,920 लेकिन अब के लिए, चलो आकर्षित करते हैं, शायद, एक तस्वीर. 60 00:02:51,920 --> 00:02:54,950 >> आप एक प्रोग्राम लिखने घोषित मुख्य साथ 61 00:02:54,950 --> 00:02:58,810 इस तरह, इस तरह के मुख्य कि दो तर्क, एक पूर्णांक लेता है 62 00:02:58,810 --> 00:03:03,233 and-- क्या डेटा प्रकार दूसरा तर्क है? 63 00:03:03,233 --> 00:03:04,529 >> दर्शक: ऐरे. 64 00:03:04,529 --> 00:03:05,320 डेविड Malan: सरणी. 65 00:03:05,320 --> 00:03:09,170 यह एक है तो ऐसा पहली नज़र में लगता है स्ट्रिंग, लेकिन वर्ग कोष्ठक नोटिस. 66 00:03:09,170 --> 00:03:12,760 हम पेश पिछली बार याद एक सरणी की धारणा. 67 00:03:12,760 --> 00:03:16,210 और सारणियों वर्ग कोष्ठक का उपयोग संदर्भों की एक जोड़ी में. 68 00:03:16,210 --> 00:03:19,160 आप वर्ग का उपयोग हो सकता है कोष्ठक एक सरणी में जाने के लिए 69 00:03:19,160 --> 00:03:22,710 और इस तरह के एक विशेष तत्व मिल ब्रैकेट 0 या ब्रैकेट 1 या ब्रैकेट 2. 70 00:03:22,710 --> 00:03:25,500 लेकिन हम अगर संक्षेप में, देखा पिछले हफ्ते यह भी है कि आप 71 00:03:25,500 --> 00:03:28,790 करने के लिए इन वर्ग कोष्ठक का उपयोग एक सरणी के आकार की घोषणा, 72 00:03:28,790 --> 00:03:31,790 आप पहले से जानते हैं कि कितने ints या कितने तार या जो कुछ भी आप 73 00:03:31,790 --> 00:03:32,630 वास्तव में चाहते हैं. 74 00:03:32,630 --> 00:03:34,790 तो यह है वहाँ पता चला है यहाँ एक तिहाई संदर्भ 75 00:03:34,790 --> 00:03:37,890 कि अंदर कोई संख्या है वर्ग कोष्ठक की. 76 00:03:37,890 --> 00:03:41,920 मैं यहाँ के रूप में जब आप, निर्दिष्ट, argv तरह से कुछ के नाम, 77 00:03:41,920 --> 00:03:44,550 जिनमें से सिर्फ एक अच्छा तरीका है तर्क वेक्टर, कह रही है जो 78 00:03:44,550 --> 00:03:47,750 का एक और अच्छा तरीका है , तर्क की एक सरणी कह 79 00:03:47,750 --> 00:03:50,870 खुला ब्रैकेट बंद कोष्ठक बस तुम जरूरी नहीं है इसका मतलब 80 00:03:50,870 --> 00:03:52,960 कितना बड़ा पहले से पता सरणी, होने जा रहा है 81 00:03:52,960 --> 00:03:55,070 लेकिन आप इसे एक सरणी होने जा रहा है पता है. 82 00:03:55,070 --> 00:03:57,320 आप नहीं जानते तो अगर संख्या, वहाँ में मत डालो 83 00:03:57,320 --> 00:04:01,160 खुला ब्रैकेट बंद कोष्ठक के लिए argv एक स्ट्रिंग नहीं है कि इसका मतलब है, 84 00:04:01,160 --> 00:04:03,124 लेकिन तारों की एक सरणी. 85 00:04:03,124 --> 00:04:05,040 तो वाक्य रचना, आप अगर पिछले सप्ताह वापस लगता है, 86 00:04:05,040 --> 00:04:09,460 यह कह के समान है पूर्णांक उम्र खुला ब्रैकेट की तरह कुछ, 87 00:04:09,460 --> 00:04:10,984 और फिर कुछ उसके बाद. 88 00:04:10,984 --> 00:04:12,150 तो क्या इस तरह दिखता है? 89 00:04:12,150 --> 00:04:13,399 वास्तव में एक तस्वीर खींचना. 90 00:04:13,399 --> 00:04:18,756 तो आप मुख्य के साथ इस कार्यक्रम चलाते समय दो तर्क अंदर परिभाषित होने 91 00:04:18,756 --> 00:04:21,339 उन कोष्ठकों का, तुम अनिवार्य रूप से कम से कम दो हिस्सा है 92 00:04:21,339 --> 00:04:23,560 स्मृति के आप को सौंप दिया हुड के नीचे. 93 00:04:23,560 --> 00:04:26,550 एक, इस आयत के रूप में आ रही है, मैं हूँ, argc कहा जा रहा है. 94 00:04:26,550 --> 00:04:30,645 और सिर्फ एक त्वरित पुनर्कथन के रूप में, argc के डेटा प्रकार क्या है? 95 00:04:30,645 --> 00:04:31,270 तो यह एक पूर्णांक है. 96 00:04:31,270 --> 00:04:33,480 तो एक नंबर जा रहा है argc-- में बदल जाता है जाने के लिए 97 00:04:33,480 --> 00:04:35,660 बाहर तर्क गणना के लिए खड़ा है. 98 00:04:35,660 --> 00:04:38,887 इस बीच, मैं एक सरणी के रूप argv खींचा है. 99 00:04:38,887 --> 00:04:40,970 और मैं सच में नहीं पता यह होने जा रहा है, कब तक 100 00:04:40,970 --> 00:04:42,470 इसलिए आज के प्रयोजनों के लिए डॉट डॉट डॉट. 101 00:04:42,470 --> 00:04:43,636 यह कुछ लंबाई की हो सकती है. 102 00:04:43,636 --> 00:04:45,640 लेकिन मैं यहाँ चित्र लिया है कम से कम चार आयतों. 103 00:04:45,640 --> 00:04:50,970 तो भंडार है कि स्मृति का एक हिस्सा argv स्ट्रिंग स्ट्रिंग स्ट्रिंग डॉट डॉट डॉट, 104 00:04:50,970 --> 00:04:53,950 और argc सिर्फ एक हिस्सा है एक पूर्णांक के लिए स्मृति की. 105 00:04:53,950 --> 00:04:55,710 >> तो अब, चलो थोड़ा और अधिक सटीक हो. 106 00:04:55,710 --> 00:04:59,200 तो, मैं तार है जब इस सरणी में कहा जाता है, 107 00:04:59,200 --> 00:05:03,290 argv, मैं उन पर प्राप्त करना चाहते हैं व्यक्तिगत रूप से, अभी पिछले सप्ताह की तरह, 108 00:05:03,290 --> 00:05:05,670 हम संकेतन का उपयोग करने के लिए जा रहे हैं argv ब्रैकेट 0 की तरह 109 00:05:05,670 --> 00:05:07,650 पहली बात यह है कि एक सरणी प्राप्त करने के लिए. 110 00:05:07,650 --> 00:05:10,440 Argv ब्रैकेट 1 पाने के लिए इसके आगे दूसरी बात, और. 111 00:05:10,440 --> 00:05:14,597 चाबी यहाँ हम अभी भी 0 हो जा रहा है indexed-- हम अभी भी 0 से भरोसा कर रहे हैं. 112 00:05:14,597 --> 00:05:16,430 तो अब वास्तव में चलो इस में कुछ डाल दिया. 113 00:05:16,430 --> 00:05:21,670 मैं एक कार्यक्रम में कहा संकलन के लिए गए थे हैलो हैलो डॉट सी नामक एक फ़ाइल से, 114 00:05:21,670 --> 00:05:24,340 और फिर मैं उस कार्यक्रम चलाने डॉट के साथ नमस्ते स्लेश, 115 00:05:24,340 --> 00:05:28,380 मेरे कंप्यूटर, मेरे लैपटॉप क्या करता है, हुड के नीचे की तरह दिखते 116 00:05:28,380 --> 00:05:31,300 मैं डॉट चलाने के पल हैलो स्लेश और हिट दर्ज करें? 117 00:05:31,300 --> 00:05:33,500 खैर, यह शायद है हम वर्णन कर सकता है क्या 118 00:05:33,500 --> 00:05:37,010 आपके कंप्यूटर के की सामग्री के रूप में स्मृति, या RAM-- रैंडम एक्सेस मेमोरी. 119 00:05:37,010 --> 00:05:40,330 दूसरे शब्दों में, कंप्यूटर, किसी भी तरह जादुई आप के लिए, 120 00:05:40,330 --> 00:05:45,360 argc में नंबर 1 डालता है, उर्फ ​​argcount, और यह सचमुच स्ट्रिंग डालता 121 00:05:45,360 --> 00:05:48,200 ./hello argv ब्रैकेट 0 में. 122 00:05:48,200 --> 00:05:51,750 मुझे पता नहीं है, सच में, क्या है argv ब्रैकेट में 1 या 2 या 3, 123 00:05:51,750 --> 00:05:55,550 उपयोगकर्ता नहीं किया गया है क्योंकि , ./hello के अलावा कुछ भी टाइप किया 124 00:05:55,550 --> 00:05:58,550 हम इन मानते हैं कि करने के लिए जा रहे हैं सबसे अधिक संभावना कचरा मान रहे हैं, 125 00:05:58,550 --> 00:05:59,700 इतनी बात करने के लिए. 126 00:05:59,700 --> 00:06:02,650 स्मृति के उन हिस्सा मौजूद हैं, लेकिन यह हम पर निर्भर नहीं है 127 00:06:02,650 --> 00:06:05,710 क्योंकि, उन्हें देखने के लिए argcount केवल एक है. 128 00:06:05,710 --> 00:06:07,870 >> अब, इस बीच, मैं अगर एक अन्य कार्यक्रम चलाने लिखना, 129 00:06:07,870 --> 00:06:12,250 अधिक ठीक से एक आदेश है जो सीडी,, अपने चमचमाते prompt-- सीडी अंतरिक्ष में 130 00:06:12,250 --> 00:06:17,200 मैं प्रभावी ढंग से, कि जब चलाने Dropbox--, सीडी कार्यक्रम चलाया जाता है, argc, 131 00:06:17,200 --> 00:06:22,270 अपने कंप्यूटर की स्मृति के अंदर, के लिए है सबसे छोटा दूसरे नंबर 2. 132 00:06:22,270 --> 00:06:25,936 और फिर argv ब्रैकेट ओ है सीडी, argv ब्रैकेट 1, ड्रॉपबॉक्स है 133 00:06:25,936 --> 00:06:28,560 और फिर बेशक आदेश पूरा करता है, तो यह स्मृति के सभी 134 00:06:28,560 --> 00:06:30,420 अनिवार्य रूप से दूर हो जाता है और कुछ और के लिए प्रयोग किया जाता है. 135 00:06:30,420 --> 00:06:32,270 और कहा कि मैं कहना क्यों है दूसरी बस एक विभाजन. 136 00:06:32,270 --> 00:06:35,720 >> इस बीच, हम mkdir pset2 करते हैं, चित्र, लगभग एक ही लग रहा है 137 00:06:35,720 --> 00:06:37,900 लेकिन argv अंदर अलग तार के साथ. 138 00:06:37,900 --> 00:06:42,570 मैं नमस्कार बजना पानी का छींटा करते हैं हैलो डॉट सी, एक ही विचार है. 139 00:06:42,570 --> 00:06:47,060 अधिक सामान के लिए में भर जाता है argv, और argc, बेशक, 4. 140 00:06:47,060 --> 00:06:49,150 तो दूसरे शब्दों में, यहां तक ​​कि इस सरणी हालांकि 141 00:06:49,150 --> 00:06:52,950 कुछ की, डॉट डॉट डॉट किया जा सकता है चर लंबाई, तो बात है, 142 00:06:52,950 --> 00:06:56,720 आप हमेशा यह का जहां अंत पता argc आपको बताने जा रहा है, क्योंकि है 143 00:06:56,720 --> 00:07:00,120 किस बिंदु पर आप को रोकना होगा argv में तत्वों पर देख रहे हैं. 144 00:07:00,120 --> 00:07:03,660 आप केवल चार पर देख सकते हैं इस मामले में कुल में. 145 00:07:03,660 --> 00:07:06,600 >> तो चलो अब पर एक नज़र रखना, शायद, एक सरल कार्यक्रम. 146 00:07:06,600 --> 00:07:09,070 सिर्फ हैलो कहते हैं कि एक Zamyla तरह किसी को. 147 00:07:09,070 --> 00:07:12,620 इसलिए मुझे लगता है मैं एक प्रोग्राम लिखने के लिए जा रहा हूँ दावा बस एक पल में जो के माध्यम से मैं कर सकता 148 00:07:12,620 --> 00:07:16,670 तो मैं चाहता हूँ ./hello अंतरिक्ष Zamyla, और अपने कार्यक्रम कुछ बाहर मुद्रित करने के लिए 149 00:07:16,670 --> 00:07:18,520 जैसे सुपर सरल "हैलो, Zamyla." 150 00:07:18,520 --> 00:07:20,100 अब अतीत में हम getstring का उपयोग किया है. 151 00:07:20,100 --> 00:07:22,850 अतीत में, भले ही तो आप, प्रोग्रामिंग करने के लिए नए हैं, 152 00:07:22,850 --> 00:07:27,180 बाधाओं आप एक कोड़ा सकता हैं getstring का उपयोग करता है कि कार्यक्रम 153 00:07:27,180 --> 00:07:29,390 और तो printf का उपयोग करता है Zamyla को नमस्ते कहने के लिए. 154 00:07:29,390 --> 00:07:31,290 लेकिन इस बार getstring का उपयोग नहीं करते हैं. 155 00:07:31,290 --> 00:07:37,510 मुझे बजाय Appliant में चलते हैं और मानक मैं हे डॉट घंटे शामिल है. 156 00:07:37,510 --> 00:07:41,160 मुझे भी CS50 डॉट घंटे शामिल करते हैं. 157 00:07:41,160 --> 00:07:44,730 अब मुख्य int, और अब मैं कर रहा हूँ आज शून्य नहीं जा रहा. 158 00:07:44,730 --> 00:07:51,200 इसके बजाय, मैं int argc क्या करने जा रहा हूँ स्ट्रिंग argv खुला ब्रैकेट बंद कोष्ठक, 159 00:07:51,200 --> 00:07:52,640 एक संख्या को निर्दिष्ट नहीं. 160 00:07:52,640 --> 00:07:54,644 और अब यहाँ मेरे पास करने के लिए तथाकथित है. 161 00:07:54,644 --> 00:07:57,560 अब मैं क्या करने जा रहा हूँ मैं कर रहा हूँ, है विश्वास की छलांग के एक बिट करने के लिए जा रहा है, 162 00:07:57,560 --> 00:08:00,560 मैं उपयोगकर्ता की कल्पना करने के लिए जा रहा हूँ सही ढंग से इस कार्यक्रम का उपयोग करने के लिए जा रहा है, 163 00:08:00,560 --> 00:08:04,980 और मैं बस करने के लिए जा रहा हूँ हैलो printf% एस.एन. करते हैं. 164 00:08:04,980 --> 00:08:06,630 तो कुछ भी नहीं है नया. 165 00:08:06,630 --> 00:08:11,470 लेकिन अब मैं जो कुछ शब्द डाल करना चाहते हैं कार्यक्रम के नाम के बाद उपयोगकर्ता प्रकार. 166 00:08:11,470 --> 00:08:16,970 इसलिए मैं Zamyla ./hello अंतरिक्ष करते हैं, मैं किसी भी तरह प्रोग्राम के उपयोग करने के लिए चाहते हैं 167 00:08:16,970 --> 00:08:20,870 गंदें शब्द बोलना "Zamyla." बोली इसलिए मैं मेरा तर्क वेक्टर में जा सकते हैं, 168 00:08:20,870 --> 00:08:25,980 मेरा तार की सरणी, और आदेश हैं, फिर, ./hello अंतरिक्ष, Zamyla था 169 00:08:25,980 --> 00:08:29,340 क्या संख्या मैं चाहता हूँ यहाँ argv में डाल करने के लिए? 170 00:08:29,340 --> 00:08:29,840 दर्शक: 1. 171 00:08:29,840 --> 00:08:32,355 डेविड Malan: 1, क्योंकि ब्रैकेट 0 पता चला है 172 00:08:32,355 --> 00:08:34,230 होने जा रहा है कार्यक्रम का नाम हमने देखा, के रूप में. 173 00:08:34,230 --> 00:08:37,789 तो ब्रैकेट 1 पहला शब्द है मुझे लगता है कि, उपयोगकर्ता, टाइप किया है. 174 00:08:37,789 --> 00:08:39,559 मुझे आगे जाना है और इस को बचाने के लिए जा रहा हूँ. 175 00:08:39,559 --> 00:08:42,830 मैं अपने फ़ोल्डर में जाने के लिए जा रहा हूँ जहां मैं इस फाइल रखा है. 176 00:08:42,830 --> 00:08:44,920 मैं नमस्कार 3 बनाना क्या करने जा रहा हूँ. 177 00:08:44,920 --> 00:08:46,230 कंप्यूटर अनुप्रयोग है कब ठीक है. 178 00:08:46,230 --> 00:08:51,380 ./hello Zamyla लिखें. 179 00:08:51,380 --> 00:08:54,480 मैं गलत क्या किया? 180 00:08:54,480 --> 00:08:57,270 मैं आश्चर्य से पकड़ा गया था अपने आप को वहाँ सिर्फ एक पल के लिए. 181 00:08:57,270 --> 00:08:58,230 मैं गलत क्या किया? 182 00:08:58,230 --> 00:08:59,220 >> दर्शक: नाम. 183 00:08:59,220 --> 00:09:01,767 >> डेविड Malan: फाइल के वास्तव में hello3.c बुलाया. 184 00:09:01,767 --> 00:09:03,850 और मैं बस के लिए किया है कि स्थिरता, हम है क्योंकि 185 00:09:03,850 --> 00:09:06,550 में था hello.c की ऑनलाइन कोड में पिछले. 186 00:09:06,550 --> 00:09:11,550 तो चलो इस ./hello तय ब्रैकेट पानी का छींटा 3 Zamyla. 187 00:09:11,550 --> 00:09:12,370 लिखें. 188 00:09:12,370 --> 00:09:14,030 और अब हम, हैलो Zamyla है. 189 00:09:14,030 --> 00:09:17,650 इस बीच, मैं करने के लिए इसे बदल सकते हैं रोब, या वास्तव में किसी भी अन्य शब्द हो. 190 00:09:17,650 --> 00:09:19,230 >> लेकिन एक कोने मामले पर विचार करें. 191 00:09:19,230 --> 00:09:24,360 आप अगर कुछ नहीं होगा क्या उम्मीद कर सकते हैं मैं सब पर किसी का नाम नहीं लिख सकता हूँ? 192 00:09:24,360 --> 00:09:25,270 >> दर्शक: त्रुटि. 193 00:09:25,270 --> 00:09:27,300 >> डेविड Malan: कोई त्रुटि शायद किसी प्रकार का. 194 00:09:27,300 --> 00:09:28,200 चलो देखते हैं. 195 00:09:28,200 --> 00:09:29,440 लिखें. 196 00:09:29,440 --> 00:09:30,210 अशक्त. 197 00:09:30,210 --> 00:09:33,870 तो printf वास्तव में किया जा रहा है हम में से एक छोटे से सुरक्षात्मक 198 00:09:33,870 --> 00:09:38,131 यहाँ, और सचमुच खुला कोष्ठक मुद्रण अशक्त, लेकिन चीजें भी बदतर हो सकता है. 199 00:09:38,131 --> 00:09:40,130 और बस को प्रदर्शित करने के लिए कुछ तुम बिल्कुल 200 00:09:40,130 --> 00:09:42,800 ऐसा नहीं होना चाहिए, चलो में चलते हैं यहां और आसपास poking शुरू. 201 00:09:42,800 --> 00:09:43,300 है ना? 202 00:09:43,300 --> 00:09:46,410 अगर मुझे पता है कि तस्वीर में स्मृति, अनिवार्य रूप से यह है 203 00:09:46,410 --> 00:09:52,660 argv ब्रैकेट 1 Zamyla, argv है ब्रैकेट 0 ./hello है, या ./hello-3. 204 00:09:52,660 --> 00:09:55,400 क्या ब्रैकेट 2 में है? 205 00:09:55,400 --> 00:09:58,210 इसलिए मुझे लगता है कि जवाब कर सकते हैं ठीक है, अपने आप में प्रश्न? 206 00:09:58,210 --> 00:10:00,460 मैं सिर्फ 2 से 1 बदल सकते हैं. 207 00:10:00,460 --> 00:10:07,270 मैं अब, 3 नमस्ते, फिर कंपाइल कर सकते हैं ./hello3 में ज़ूम और हिट दर्ज करते हैं. 208 00:10:07,270 --> 00:10:08,270 वूप्स. 209 00:10:08,270 --> 00:10:10,660 कोई उद्धरण चिह्न. 210 00:10:10,660 --> 00:10:12,540 दिलचस्प. 211 00:10:12,540 --> 00:10:15,530 तो उस तरह के अच्छा है यहाँ में है और क्या देखते हैं. 212 00:10:15,530 --> 00:10:17,130 >> तो और क्या मेरे लैपटॉप के अंदर है? 213 00:10:17,130 --> 00:10:20,390 के ब्रैकेट 3 के साथ इसे बचाने के लिए करते हैं. 214 00:10:20,390 --> 00:10:25,190 ./hello -3, Hello3 बनाओ. 215 00:10:25,190 --> 00:10:26,500 जिज्ञासु. 216 00:10:26,500 --> 00:10:30,560 और अब वास्तव में bold-- 50 मिलता है. 217 00:10:30,560 --> 00:10:34,340 इसलिए कि गहरी वास्तव में गोताखोरी है अपने कंप्यूटर की स्मृति में. 218 00:10:34,340 --> 00:10:35,930 50 अनुक्रमित में. 219 00:10:35,930 --> 00:10:41,950 तो हैलो 3 ./hello-3 बनाना. 220 00:10:41,950 --> 00:10:42,680 जिज्ञासु. 221 00:10:42,680 --> 00:10:44,660 सब ठीक है, अब मैं अभी कर रहा हूँ लापरवाह पाने के लिए जा रहा है. 222 00:10:44,660 --> 00:10:47,331 के 5000 के लिए चलते हैं. 223 00:10:47,331 --> 00:10:47,830 ठीक है. 224 00:10:47,830 --> 00:10:49,520 तो मुझे फिर कंपाइल करते हैं. 225 00:10:49,520 --> 00:10:51,460 ./hello -3, Hello3 बनाओ. 226 00:10:51,460 --> 00:10:55,780 227 00:10:55,780 --> 00:10:56,460 ठीक. 228 00:10:56,460 --> 00:10:59,250 आप में से कुछ अब, वहाँ हो सकता है बंद रहा एक प्रकाश बल्ब हो. 229 00:10:59,250 --> 00:11:01,900 आप में से कितने पास की पहले इस संदेश को देखा है? 230 00:11:01,900 --> 00:11:03,440 ठीक. 231 00:11:03,440 --> 00:11:04,420 तो, क्यों? 232 00:11:04,420 --> 00:11:07,250 >> बाधाओं are-- और अलग नहीं है इस कारण हो सकता है कि चीजें, 233 00:11:07,250 --> 00:11:09,730 और स्पष्ट रूप से आप अच्छा कर रहे हैं में company-- हम स्पष्ट रूप से है 234 00:11:09,730 --> 00:11:11,900 कहा जाता है के कारण विखंडन दोष. 235 00:11:11,900 --> 00:11:15,890 और आज के लिए लंबी कहानी संक्षेप में, मैं स्मृति के एक खंड को छुआ है 236 00:11:15,890 --> 00:11:17,060 मैं नहीं होना चाहिए कि. 237 00:11:17,060 --> 00:11:19,970 जहां एक खंड सिर्फ एक हिस्सा मतलब स्मृति की मैं नहीं होना चाहिए कि. 238 00:11:19,970 --> 00:11:25,530 अब कंप्यूटर गारंटी देता है कि अगर मैं मैं argv संपर्क कर सकते हैं कि ./helloZamyla चलाने 239 00:11:25,530 --> 00:11:27,760 ब्रैकेट 0 और argv ब्रैकेट 1 हो. 240 00:11:27,760 --> 00:11:32,730 लेकिन argc मूल्य 2, कि मैं हूं, इसका मतलब है केवल यह सम्मान की तरह है allowed-- 241 00:11:32,730 --> 00:11:35,180 स्पर्श करने system-- ब्रैकेट 0 और ब्रैकेट 1. 242 00:11:35,180 --> 00:11:37,990 मैं किसी भी आगे जाना है, वहाँ वहाँ बिल्कुल स्मृति होने जा रहा. 243 00:11:37,990 --> 00:11:40,660 मेरे राम शारीरिक रूप से मौजूद है कंप्यूटर में. 244 00:11:40,660 --> 00:11:42,080 लेकिन वहाँ कौन है क्या जानता है? 245 00:11:42,080 --> 00:11:44,450 दरअसल, मैं कई चल रहा हूँ एक समय पर कार्यक्रम. 246 00:11:44,450 --> 00:11:46,910 मैं नहीं थे अगर मैं seen-- हो सकता है Appliant पर यह कर 247 00:11:46,910 --> 00:11:49,937 लेकिन अपने मैक या PC-- पर मैं हो सकता है एक ईमेल की सामग्री को देखा. 248 00:11:49,937 --> 00:11:52,270 मैं एक पल देखा हो सकता है संदेश मैं हाल ही में भेज दिया है. 249 00:11:52,270 --> 00:11:55,390 हो सकता है कि कुछ भी स्मृति में चारों ओर सुस्त 250 00:11:55,390 --> 00:11:59,180 के माध्यम से पहुँचा जा सकता था इस मनमानी वर्ग ब्रैकेट अंकन. 251 00:11:59,180 --> 00:12:02,850 या बुरा अभी तक, तुम हो सकता है मेरे पासवर्ड में से एक पाया 252 00:12:02,850 --> 00:12:05,859 मैं हाल ही में लिखे गए एक कि था कि कार्यक्रम स्मृति में संग्रहीत किया था के रूप में तो 253 00:12:05,859 --> 00:12:07,900 मुझे प्रमाणित, और करने के लिए तो बस की तरह इसे छोड़ दिया 254 00:12:07,900 --> 00:12:09,910 राम में मुझे लगता है कि इस कार्यक्रम से बाहर निकलें जब तक. 255 00:12:09,910 --> 00:12:12,860 >> और वास्तव में, इस में से एक है खतरे और एक शक्तियां 256 00:12:12,860 --> 00:12:15,980 सी की तरह एक भाषा का उपयोग करने का आप निरंकुश उपयोग कर सकते है 257 00:12:15,980 --> 00:12:18,860 सारी सामग्री को एक कार्यक्रम की स्मृति में, 258 00:12:18,860 --> 00:12:21,340 और क्या बुरे लोग कर सकते हैं यहां तक ​​कि उन cases-- में कर 259 00:12:21,340 --> 00:12:23,807 खासकर जब हम वेब प्रोग्रामिंग करने के लिए मिलता है 260 00:12:23,807 --> 00:12:26,890 सेमेस्टर के अंत की ओर, हम करेंगे चारों ओर ढकेलना है इस topic-- फिर से आना, 261 00:12:26,890 --> 00:12:31,660 संभवतः, किसी कंप्यूटर का है स्मृति और ऐसे उत्सुक चीजों को खोजने 262 00:12:31,660 --> 00:12:32,570 हम वहाँ देखा. 263 00:12:32,570 --> 00:12:36,900 या भी बदतर अभी तक, पासवर्ड कि वह या तो वह बुरी बातें करने के लिए उपयोग कर सकते हैं. 264 00:12:36,900 --> 00:12:40,240 >> तो स्पष्ट रूप से मैं ऐसा नहीं करना चाहिए अजीब बातें होने शुरू है. 265 00:12:40,240 --> 00:12:42,310 दरअसल, यह एक कार्यक्रम दुर्घटनाग्रस्त है. 266 00:12:42,310 --> 00:12:44,580 यह बराबर होगा विंडोज मैक ओएस के लिए या में 267 00:12:44,580 --> 00:12:46,770 एक प्रोग्राम विंडो सिर्फ गायब. 268 00:12:46,770 --> 00:12:48,300 एक अप्रत्याशित त्रुटि हुई है. 269 00:12:48,300 --> 00:12:50,840 कमांड लाइन माहौल में हम कुछ इस तरह देखते हैं. 270 00:12:50,840 --> 00:12:54,480 लेकिन यही कारण है कि, मैं बस छू रहा है मेरे लिए नहीं है कि स्मृति. 271 00:12:54,480 --> 00:12:57,090 >> तो चलो इस एक के खिलाफ की रक्षा करते हैं एक अलग तरह से थोड़ा सा 272 00:12:57,090 --> 00:12:59,010 यहां इस कार्यक्रम को देखकर. 273 00:12:59,010 --> 00:13:01,000 तो, फिर से, कंकाल हम earlier-- देखा कि 274 00:13:01,000 --> 00:13:02,480 और मैं इस समय पूर्णांक पर प्रकाश डाला गया है. 275 00:13:02,480 --> 00:13:05,900 और यह सब समय मुख्य है वास्तव में एक मान दिया. 276 00:13:05,900 --> 00:13:09,120 हालांकि हमारे व्याख्यान के अधिकांश में हम एक बार इस्तेमाल कभी नहीं किया उदाहरण 277 00:13:09,120 --> 00:13:10,990 मुख्य में कुछ भी वापसी. 278 00:13:10,990 --> 00:13:13,710 हम सिर्फ printf करीब लिखना घुंघराले ब्रेस और यह बात है. 279 00:13:13,710 --> 00:13:16,500 लेकिन मुक्त करने के लिए, क्या संकलक, आप के लिए कर दिया गया 280 00:13:16,500 --> 00:13:19,510 प्रभावी रूप से, आप के लिए 0 लौट रहा है. 281 00:13:19,510 --> 00:13:22,950 Out-- बदल जाता है और यह एक छोटी सी है 0 अच्छा है कि counterintuitive--. 282 00:13:22,950 --> 00:13:24,690 यह एसई प्रति गलत मतलब यह नहीं है. 283 00:13:24,690 --> 00:13:29,080 0 अच्छा है, और किसी भी गैर 0 मूल्य, दुनिया का फैसला किया है, 284 00:13:29,080 --> 00:13:30,619 एक त्रुटि दर्शाता कर सकते हैं. 285 00:13:30,619 --> 00:13:32,910 आप कभी गड़बड़ है तो अगर आपके कंप्यूटर पर कुछ, 286 00:13:32,910 --> 00:13:36,600 या एक कार्यक्रम सिर्फ तुम पर मर गया और आप कुछ गलत खिड़की मिल गया है 287 00:13:36,600 --> 00:13:40,360 अपनी स्क्रीन पर, कह त्रुटि 49 या त्रुटि नकारात्मक 23-- 288 00:13:40,360 --> 00:13:44,170 है कि कुछ मालूम होता है मनमाना value-- एक प्रोग्रामर हार्ड कोडित है क्योंकि 289 00:13:44,170 --> 00:13:49,370 49 नकारात्मक या सकारात्मक तरह एक मूल्य 23 किसी भी संख्या का प्रतिनिधित्व करने के लिए कहते हैं, हिम्मत, 290 00:13:49,370 --> 00:13:53,340 4 अरब संभव चीजों की कि एक कार्यक्रम में गलत जा सकता है. 291 00:13:53,340 --> 00:13:55,700 >> तो मैं कैसे ले सकता है इस का लाभ अपने आप को? 292 00:13:55,700 --> 00:13:58,970 खैर, मुझे एक कार्यक्रम खोल देना मैं पहले से लिखा है कि, 293 00:13:58,970 --> 00:14:01,450 और ऑनलाइन नमस्ते 4 बुलाया आसपास प्रहार. 294 00:14:01,450 --> 00:14:05,650 और यह, सिवाय इसके कि लगभग समान है अपने त्रुटि की जाँच का एक छोटा सा मिल गया. 295 00:14:05,650 --> 00:14:09,660 इस मामले में, मैं फिर से घोषित कर दिया है दो तर्क लेने के रूप में मुख्य, 296 00:14:09,660 --> 00:14:13,180 लेकिन इस बार, लाइन 17 पर, नोटिस मैं एक मानसिक स्वास्थ्य की जांच के एक बिट कर रहा हूँ. 297 00:14:13,180 --> 00:14:17,100 मैं यह सुनिश्चित करें कि बना रहा हूँ argc 2 बराबर होती है. 298 00:14:17,100 --> 00:14:18,960 अगर यह होता है कि, क्योंकि मैं सुरक्षित रूप से कर सकते हैं मतलब 299 00:14:18,960 --> 00:14:21,420 न केवल ब्रैकेट 0, लेकिन ब्रैकेट 1 छूना. 300 00:14:21,420 --> 00:14:24,330 और मुझे आगे जाना है और बाहर प्रिंट, इस मामले में, Zamyla या रोब 301 00:14:24,330 --> 00:14:26,020 या मैं बाहर टाइप जो कुछ शब्द. 302 00:14:26,020 --> 00:14:28,020 और अब सिर्फ पाने के लिए , अधिक उचित एक छोटी सी 303 00:14:28,020 --> 00:14:31,910 मैं स्पष्ट रूप से वापस जाने के लिए जा रहा हूँ 0 सब कुछ ठीक है दर्शाता है. 304 00:14:31,910 --> 00:14:33,300 कुछ भी बुरा हुआ. 305 00:14:33,300 --> 00:14:38,590 >> लेकिन सम्मेलन से, मैं जा रहा हूँ 1 लौटने, या स्पष्ट रूप से किसी भी गैर 0 मान, 306 00:14:38,590 --> 00:14:40,160 कुछ गलत हो गया है. 307 00:14:40,160 --> 00:14:43,270 अब उपयोगकर्ता के लिए नहीं जा रहा है वास्तव में क्या हो रहा है नोटिस. 308 00:14:43,270 --> 00:14:50,410 दरअसल मैं इस निर्देशिका में जाओ, हम में ज़ूम और हैलो 4 बना कर 309 00:14:50,410 --> 00:14:54,210 मैं उम्मीद के रूप में ./hello-4 Zamyla व्यवहार करता है. 310 00:14:54,210 --> 00:14:58,570 लेकिन मैं बजाय टाइप नहीं है कुछ भी, कुछ भी नहीं होने लगता है, 311 00:14:58,570 --> 00:14:59,680 लेकिन यह दुर्घटना नहीं है. 312 00:14:59,680 --> 00:15:04,660 और मैं बजाय कुछ करते हैं रोब तरह एक प्रॉक्टर है 313 00:15:04,660 --> 00:15:07,550 Thayer-- बंटवारे में मनमाने ढंग से जानकारी. 314 00:15:07,550 --> 00:15:13,680 लेकिन नोटिस, argv 1, 2, 3, 4, और 5 अब स्मृति में मौजूद होना चाहिए. 315 00:15:13,680 --> 00:15:16,540 वह भी, नहीं क्या है मेरे कार्यक्रम की उम्मीद 316 00:15:16,540 --> 00:15:20,300 मैं चाहे जाँच की है क्योंकि argc बराबर 2 या नहीं के बराबर होती है. 317 00:15:20,300 --> 00:15:22,140 इसलिए मैं अब इस के खिलाफ की रक्षा कर रहा हूँ. 318 00:15:22,140 --> 00:15:25,290 >> अब, के रूप में एक अलग रूप में, हम programmer-- या बल्कि हम users-- 319 00:15:25,290 --> 00:15:29,670 0 या 1 लेकिन एक का उपयोग कर देखते हैं कि कभी नहीं उपकरण, डिबगर, या अन्य उपकरण बुलाया 320 00:15:29,670 --> 00:15:32,250 हम पहले देखेंगे के रूप में लंबे समय, आप प्रोग्रामर 321 00:15:32,250 --> 00:15:36,590 वास्तव में क्या हो सकता है देख सकते हैं अपने कार्यक्रम के अंदर गलत हो रहा. 322 00:15:36,590 --> 00:15:39,170 >> तो, argc पर कोई सवाल? 323 00:15:39,170 --> 00:15:40,873 हाँ. 324 00:15:40,873 --> 00:15:45,292 >> दर्शक: मैंने देखा है जहां वे चरित्र नहीं था, [अश्राव्य] 325 00:15:45,292 --> 00:15:49,669 बस जैसे स्ट्रिंग सितारा डी ने कहा, चरित्र तारांकन अल्पविराम. 326 00:15:49,669 --> 00:15:50,710 वे यहाँ बराबर हैं? 327 00:15:50,710 --> 00:15:51,626 >> डेविड Malan: वे कर रहे हैं. 328 00:15:51,626 --> 00:15:55,080 सवाल है तो, आपके पास कभी कभी देखा कार्यक्रमों 329 00:15:55,080 --> 00:15:57,270 ऐसा नहीं है कि इस तरह स्ट्रिंग argv ब्रैकेट कहना 330 00:15:57,270 --> 00:16:01,015 लेकिन बदले में कुछ कहना चार सितारा argv ब्रैकेट की तरह. 331 00:16:01,015 --> 00:16:03,140 और भी अन्य वहाँ आप देख सकते हैं कि वेरिएंट. 332 00:16:03,140 --> 00:16:04,264 वे वास्तव में बराबर हैं. 333 00:16:04,264 --> 00:16:06,240 अभी के लिए, हम इन किया प्रशिक्षण के पहियों की तरह 334 00:16:06,240 --> 00:16:09,737 CS50 में स्ट्रिंग के रूप में पर पुस्तकालय, लेकिन सिर्फ एक सप्ताह से अधिक में 335 00:16:09,737 --> 00:16:12,570 या तो हम दूर करने के लिए जा रहे हैं पूरी तरह और वास्तव में रुकावट 336 00:16:12,570 --> 00:16:16,820 चार और सितारा है देखो कर रहे हैं, और उन स्मृति से संबंधित कैसे 337 00:16:16,820 --> 00:16:18,140 प्रतिनिधित्व अधिक आम तौर पर. 338 00:16:18,140 --> 00:16:19,540 इसलिए हम वापस कि करने के लिए आया हूँ. 339 00:16:19,540 --> 00:16:21,540 >> हमारे argv या argc पर अन्य प्रश्न? 340 00:16:21,540 --> 00:16:22,397 हाँ. 341 00:16:22,397 --> 00:16:24,438 दर्शक: क्यों इसे वापस किया एक त्रुटि [अश्राव्य]? 342 00:16:24,438 --> 00:16:27,147 343 00:16:27,147 --> 00:16:29,230 डेविड Malan: यह किया क्यों ओह only-- त्रुटि वापस! 344 00:16:29,230 --> 00:16:31,813 पिछले मामले में, जब हम स्मृति के साथ आसपास futzing गया, 345 00:16:31,813 --> 00:16:35,110 क्यों यह केवल एक त्रुटि वापस किया मैं वास्तव में एक बड़ी संख्या टाइप किया है? 346 00:16:35,110 --> 00:16:36,620 संक्षिप्त जवाब है कि हम सिर्फ भाग्यशाली है, है. 347 00:16:36,620 --> 00:16:39,240 सामान्य शब्दों में, एक कंप्यूटर मात्रा में स्मृति का आवंटन, 348 00:16:39,240 --> 00:16:42,900 और यह मुझे एक बहुत बड़ा हिस्सा दे दिया है कि मैं, देखा जा रहा बिना, दूर मिला 349 00:16:42,900 --> 00:16:46,280 छू ब्रैकेट 2, वर्ग 3 की, ब्रैकेट 50, लेकिन जैसे ही मैं धक्का दिया 350 00:16:46,280 --> 00:16:49,080 मेरी किस्मत, मैं परे चला गया स्मृति का हिस्सा की सीमाओं 351 00:16:49,080 --> 00:16:50,520 ऑपरेटिंग सिस्टम मुझे दिया था. 352 00:16:50,520 --> 00:16:52,720 और कहा कि जब यह बात है नीचे clamped और नहीं, कहा. 353 00:16:52,720 --> 00:16:54,580 विभाजन त्रुटि. 354 00:16:54,580 --> 00:16:55,692 हाँ. 355 00:16:55,692 --> 00:16:58,890 >> दर्शक: कैसे करता है कंप्यूटर argc की कीमत पता है? 356 00:16:58,890 --> 00:17:02,390 >> डेविड Malan: कैसे करता है कंप्यूटर argc की कीमत पता है? 357 00:17:02,390 --> 00:17:07,920 आप एक प्रोग्राम चलाते हैं, उस कार्यक्रम, निमिष शीघ्र की प्रकृति से, 358 00:17:07,920 --> 00:17:11,359 की सरणी सौंप दिया है टाइप किया गया है कि शब्द 359 00:17:11,359 --> 00:17:13,300 प्रॉम्प्ट पर, कि था प्रांप्ट पर टाइप. 360 00:17:13,300 --> 00:17:16,569 और तो यह आपके काम कर रहा है सिस्टम अनिवार्य रूप से कि 361 00:17:16,569 --> 00:17:20,329 आप के लिए मुख्य तर्क भरता. 362 00:17:20,329 --> 00:17:22,829 तो यह है कि सेवाओं में से एक है आप मिलता है, की तरह चुपके से 363 00:17:22,829 --> 00:17:24,869 के हुड के नीचे एक ऑपरेटिंग सिस्टम. 364 00:17:24,869 --> 00:17:27,118 अन्य सवालों के जवाब? 365 00:17:27,118 --> 00:17:27,618 हाँ. 366 00:17:27,618 --> 00:17:29,787 >> दर्शक: कोर डंप क्या मतलब है? 367 00:17:29,787 --> 00:17:31,370 डेविड Malan: कोर डंप क्या मतलब है? 368 00:17:31,370 --> 00:17:32,950 तो यह एक अच्छा सवाल है. 369 00:17:32,950 --> 00:17:35,312 और मुझे में वापस जाओ यहाँ इस निर्देशिका. 370 00:17:35,312 --> 00:17:37,270 और तुम उस पर ध्यान देंगे मैं वहाँ एक नया फ़ाइल है. 371 00:17:37,270 --> 00:17:41,670 यह वास्तव में कोर कहा जाता है, और यह है वास्तव में आम तौर पर एक सभ्य आकार फ़ाइल. 372 00:17:41,670 --> 00:17:45,300 यह अनिवार्य रूप से एक स्नैपशॉट है मेरे कार्यक्रम की स्मृति की सामग्री 373 00:17:45,300 --> 00:17:46,902 यह दुर्घटनाग्रस्त हो गया जब या राम. 374 00:17:46,902 --> 00:17:49,110 और यह उपयोगी होगा संभवतः, diagnostically, 375 00:17:49,110 --> 00:17:52,850 हम एक भविष्य व्याख्यान में बात एक बार और डिबगिंग के बारे में खंड, 376 00:17:52,850 --> 00:17:55,730 आप वास्तव में क्या कर सकते हैं क्योंकि एक डिजिटल शव परीक्षा के समकक्ष 377 00:17:55,730 --> 00:18:00,300 उस फ़ाइल पर पता लगाने में मदद करने के लिए यदि आप अपने कार्यक्रम में क्या गलत किया. 378 00:18:00,300 --> 00:18:01,220 हाँ. 379 00:18:01,220 --> 00:18:04,450 >> दर्शक: एक आदेश में argc है ही है, या आप इसे कुछ भी नाम दे सकते हैं? 380 00:18:04,450 --> 00:18:05,575 >> डेविड Malan: अच्छा सवाल है. 381 00:18:05,575 --> 00:18:08,040 अपने आप में एक आदेश argc है या आप इसे कुछ भी नाम दे सकते हैं? 382 00:18:08,040 --> 00:18:09,290 यह निश्चित रूप से एक आदेश नहीं है. 383 00:18:09,290 --> 00:18:13,500 यह बस एक चर का है या एक तर्क के नाम का नाम, 384 00:18:13,500 --> 00:18:15,481 और तो बिल्कुल हम इस foo कह सकते हैं, 385 00:18:15,481 --> 00:18:18,480 हम जो करते हैं इस बार, कह सकते हैं जाने के लिए शब्द है कि एक कंप्यूटर होने के लिए 386 00:18:18,480 --> 00:18:19,860 वैज्ञानिक को जाता है. 387 00:18:19,860 --> 00:18:22,820 लेकिन सम्मेलन से, हम argc और argv का उपयोग करें. 388 00:18:22,820 --> 00:18:25,360 लेकिन वह सिर्फ एक मानव सम्मेलन, इससे अधिक कुछ नहीं. 389 00:18:25,360 --> 00:18:25,860 ठीक है. 390 00:18:25,860 --> 00:18:28,140 तो पता चला है, मैं कर रहा हूँ एक सफेद lie-- का एक सा कह रही 391 00:18:28,140 --> 00:18:31,264 और सच कहूँ तो, भविष्य में, आप देखेंगे हम अन्य सफेद झूठ बोल रहा है. 392 00:18:31,264 --> 00:18:33,510 लेकिन अब के लिए, हम जा रहे हैं इन में से एक वापस छील. 393 00:18:33,510 --> 00:18:37,310 जब पहले मैं यहाँ इस मामले में ./hello या ./hello -3 की तरह एक कार्यक्रम में भाग गया 394 00:18:37,310 --> 00:18:42,780 Zamyla, हम की सामग्री थी मेरे मोटे तौर पर की तरह लग रही कंप्यूटर की मेमोरी 395 00:18:42,780 --> 00:18:43,280 इस. 396 00:18:43,280 --> 00:18:45,070 लेकिन एक स्ट्रिंग है क्या याद आता है. 397 00:18:45,070 --> 00:18:49,279 हम क्या एक एक सप्ताह पहले कहा था क्या स्ट्रिंग वास्तव में हुड के नीचे है? 398 00:18:49,279 --> 00:18:50,320 दर्शक: घर का काम की सरणी. 399 00:18:50,320 --> 00:18:52,111 डेविड Malan: यह एक है घर का काम की सरणी, है ना? 400 00:18:52,111 --> 00:18:55,760 तो हम की एक सरणी हो सकता है तार, लेकिन बदले में, एक स्ट्रिंग 401 00:18:55,760 --> 00:18:57,150 वर्णों की एक सरणी है. 402 00:18:57,150 --> 00:19:00,010 मैं वास्तव में होना चाहते हैं तो मैं इस तस्वीर खींचना जब गुदा, 403 00:19:00,010 --> 00:19:03,290 मैं वास्तव में ड्राइंग किया जाना चाहिए यह एक छोटे से अधिक इस तरह, 404 00:19:03,290 --> 00:19:08,000 जिससे इनमें से प्रत्येक में मेरे argv सरणी के अनुक्रमित, 405 00:19:08,000 --> 00:19:11,432 एक पूरी स्ट्रिंग ही है खुद कि एक सरणी में है. 406 00:19:11,432 --> 00:19:13,140 और अब सफेद झूठ हम आज कह रहे हैं 407 00:19:13,140 --> 00:19:15,181 तस्वीर नहीं है काफी इस तरह दिखेगा. 408 00:19:15,181 --> 00:19:19,110 वास्तव में, थोड़ा चौकों हैं बड़ा आयतों की आम तौर पर बाहर 409 00:19:19,110 --> 00:19:19,610 क्या आप वहां मौजूद हैं. 410 00:19:19,610 --> 00:19:21,280 लेकिन हम लंबे समय से पहले वापस करने के लिए आया हूँ. 411 00:19:21,280 --> 00:19:25,440 लेकिन यह ./hello बैकस्लैश 0 उस विशेष चरित्र जा रहा है कि 412 00:19:25,440 --> 00:19:28,310 एक स्ट्रिंग के अंत सीमांकित, और हम एक दूसरे के बाद मिल गया है 413 00:19:28,310 --> 00:19:29,360 Zamyla का नाम. 414 00:19:29,360 --> 00:19:30,900 तो इसका मतलब क्या है? 415 00:19:30,900 --> 00:19:33,410 >> खैर, मुझे आगे चलते हैं और दो अन्य उदाहरण खोल 416 00:19:33,410 --> 00:19:35,220 ऑनलाइन उपलब्ध हैं. 417 00:19:35,220 --> 00:19:40,590 एक argv1.c कहा जाता है और अन्य argv2 है. 418 00:19:40,590 --> 00:19:44,260 यह एक सुपर सरल कार्यक्रम है कि पिछले कार्यक्रमों से अलग है 419 00:19:44,260 --> 00:19:47,260 कि अब मैं उपयोग कर रहा हूँ argc और यहाँ argv. 420 00:19:47,260 --> 00:19:54,300 और अब मैं पाश के लिए एक साथ एकीकृत कर रहा हूँ argc अप करने के लिए पर मैं से लाइन 18, = 0 में. 421 00:19:54,300 --> 00:19:56,850 और मैं क्या करने जा रहा हूँ यहाँ कोड की इस पंक्ति के साथ? 422 00:19:56,850 --> 00:19:58,270 अंग्रेजी में. 423 00:19:58,270 --> 00:20:00,510 यह स्पष्ट रूप से argc के उपयोग को दर्शाता है. 424 00:20:00,510 --> 00:20:03,670 लेकिन अंग्रेजी में, क्या करता है मैं इस कार्यक्रम को चलाने अगर यह क्या है? 425 00:20:03,670 --> 00:20:04,366 हाँ? 426 00:20:04,366 --> 00:20:07,386 >> दर्शक: यह मुद्रित करने के लिए जा रहा है आपके आप चाहते हैं के रूप में कई बार स्क्रीन. 427 00:20:07,386 --> 00:20:08,260 डेविड Malan: बिल्कुल. 428 00:20:08,260 --> 00:20:10,480 इसलिए जो भी शब्द मैं यह है, प्रांप्ट पर टाइप करें 429 00:20:10,480 --> 00:20:13,120 बहना के लिए जा रहा प्रति पंक्ति मुझ पर उन्हें एक. 430 00:20:13,120 --> 00:20:14,370 तो चलो आगे जाना है और यह करते हैं. 431 00:20:14,370 --> 00:20:17,862 मुझे मेरी निर्देशिका में चलते हैं और argv1 ./argv1 करते हैं. 432 00:20:17,862 --> 00:20:20,521 433 00:20:20,521 --> 00:20:21,770 और अब, चलो इसे साधारण रखना. 434 00:20:21,770 --> 00:20:23,834 की पहली बार में कुछ नहीं करते हैं. 435 00:20:23,834 --> 00:20:26,750 यह एक बात प्रिंट आउट किया था, और कि वास्तव में इस कार्यक्रम का नाम है, 436 00:20:26,750 --> 00:20:28,240 उस कोष्ठक 0 में है. 437 00:20:28,240 --> 00:20:33,290 मैं अब foo कहना है, यह क्या हो रहा है उन दो, और मैं foo बार कहते हैं, 438 00:20:33,290 --> 00:20:35,580 यह उन तीन बातें कहने के लिए जा रहा है. 439 00:20:35,580 --> 00:20:37,740 अब हो सकता है कि कुछ हद तक दिलचस्प है. 440 00:20:37,740 --> 00:20:41,450 लेकिन उस argv याद तारों की एक सरणी है, 441 00:20:41,450 --> 00:20:45,960 लेकिन एक स्ट्रिंग वर्ण की एक सरणी है, इसलिए हम एक पायदान ऊपर बातें ले जा सकते हैं 442 00:20:45,960 --> 00:20:48,560 और कहा कि बुनियादी लागू तर्क और कोड बनाने कि 443 00:20:48,560 --> 00:20:51,160 वैसे, एक छोटे से अधिक गूढ़ लग रहा है. 444 00:20:51,160 --> 00:20:53,540 लेकिन द्वारा एक नेस्टेड होने पाश, जैसा कुछ 445 00:20:53,540 --> 00:20:57,030 आप मारियो से याद हो सकता है क्या, उदाहरण के लिए, यदि आप इसे इस तरह से किया था. 446 00:20:57,030 --> 00:21:00,380 >> तो अब मैं कर रहा हूँ, लाइन 19 पर नोटिस फिर मेरे तर्कों पर iterating, 447 00:21:00,380 --> 00:21:02,410 0 से ऊपर पर argc लिए. 448 00:21:02,410 --> 00:21:05,510 और अब लाइन में मैं 21-- हूँ पिछले week-- से एक चाल उधार 449 00:21:05,510 --> 00:21:11,090 मैं क्या है जाँच कर रहा हूँ argv ब्रैकेट मैं की लंबाई. 450 00:21:11,090 --> 00:21:12,920 मैं एन में जवाब है कि भंडारण कर रहा हूँ. 451 00:21:12,920 --> 00:21:18,230 और फिर मैं जम्मू से पर एकीकृत कर रहा हूँ जम्मू 0 करने के लिए प्रारंभ की है, जहां एन, अप करने के लिए. 452 00:21:18,230 --> 00:21:19,460 तो, गिनती के लिए सम्मेलन. 453 00:21:19,460 --> 00:21:22,335 यदि आपके पास एक तुम, मैं उपयोग कर लेते हैं नेस्टेड लूप, तुम, फिर मैं उपयोग नहीं कर सकते 454 00:21:22,335 --> 00:21:25,770 अन्यथा आप संभावित, पीटना हूँ, भीतरी लूप के बाहर मूल्य. 455 00:21:25,770 --> 00:21:27,200 इसलिए मैं सम्मेलन से जम्मू का उपयोग कर रहा हूँ. 456 00:21:27,200 --> 00:21:28,020 हम कश्मीर उपयोग हो सकता है. 457 00:21:28,020 --> 00:21:31,080 आप कश्मीर की तुलना में अधिक है, तो आप शायद आम तौर पर बहुत ज्यादा घोंसले के शिकार है. 458 00:21:31,080 --> 00:21:33,800 लेकिन अब, मेरे printf नोटिस लाइन से थोड़ा अलग है. 459 00:21:33,800 --> 00:21:37,520 मैं% एस मुद्रण नहीं कर रहा हूँ, मैं हूँ ,% सी मुद्रण जो, ज़ाहिर है, 460 00:21:37,520 --> 00:21:39,460 एक चार के लिए एक प्लेसहोल्डर है. 461 00:21:39,460 --> 00:21:40,770 >> और अब इस वाक्य पर ध्यान दिया. 462 00:21:40,770 --> 00:21:41,270 नई. 463 00:21:41,270 --> 00:21:42,630 हम पहले नहीं देखा है. 464 00:21:42,630 --> 00:21:47,290 लेकिन तार्किक रूप से, यह सिर्फ मतलब argv में ith तार मिल 465 00:21:47,290 --> 00:21:50,067 और क्या JTH मिलता है? 466 00:21:50,067 --> 00:21:50,900 दर्शक: चरित्र. 467 00:21:50,900 --> 00:21:52,800 डेविड Malan: कि स्ट्रिंग में चरित्र. 468 00:21:52,800 --> 00:21:57,100 तो वर्ग कोष्ठक का उपयोग करके वर्ग कोष्ठक द्वारा पीछा किया, 469 00:21:57,100 --> 00:22:00,390 यह पहली डाइविंग है argv के तार में, 470 00:22:00,390 --> 00:22:02,225 और फिर दूसरा जम्मू के साथ वर्ग कोष्ठक 471 00:22:02,225 --> 00:22:06,580 के पात्रों में गोता है argv में उस विशेष स्ट्रिंग. 472 00:22:06,580 --> 00:22:09,562 और फिर, सिर्फ अच्छे उपाय के लिए, मैं यहाँ एक नई लाइन मुद्रण कर रहा हूँ. 473 00:22:09,562 --> 00:22:12,020 तो अब मुझे आगे जाना है और खुला एक थोड़ा बड़ा खिड़की 474 00:22:12,020 --> 00:22:13,600 तो हम कार्रवाई में यह देख सकते हैं. 475 00:22:13,600 --> 00:22:15,700 मुझे उस फ़ोल्डर में चलते हैं. 476 00:22:15,700 --> 00:22:22,550 और अब करते argv-2-- argv -2 बनाने whoops--, ./argv 2. 477 00:22:22,550 --> 00:22:23,110 लिखें. 478 00:22:23,110 --> 00:22:24,860 और यह थोड़ा मुश्किल है खड़ी पढ़ने के लिए, 479 00:22:24,860 --> 00:22:27,920 लेकिन यह है कि वास्तव में का नाम है एक खाली लाइन द्वारा पीछा कार्यक्रम,. 480 00:22:27,920 --> 00:22:30,210 अब मुझे आगे जाना है और फू करते हैं. 481 00:22:30,210 --> 00:22:33,210 इसी प्रकार कठिन पढ़ा है, लेकिन यह करने के लिए वास्तव में प्रति पंक्ति एक चरित्र मुद्रण. 482 00:22:33,210 --> 00:22:36,780 मैं बार करते हैं, यह अब है रेखा ने उन लाइन मुद्रण. 483 00:22:36,780 --> 00:22:40,140 तो यहाँ takeaway इतना नहीं है वाह, यह साफ नई चाल पर देखने के लिए, कि 484 00:22:40,140 --> 00:22:44,750 जहां आप सामग्री पर प्राप्त कर सकते हैं एक सरणी के विशिष्ट वर्ण की, 485 00:22:44,750 --> 00:22:48,380 बल्कि हम इन बुनियादी ले जा रहे हैं कैसे एक सरणी में अनुक्रमण की तरह विचारों, 486 00:22:48,380 --> 00:22:51,620 और फिर एक में अनुक्रमण कि सरणी में था कि सरणी, 487 00:22:51,620 --> 00:22:56,180 और अभी तक एक ही विचारों को लागू करने थोड़ा और अधिक परिष्कृत उदाहरण हैं. 488 00:22:56,180 --> 00:22:59,560 लेकिन मूल बातें सच नहीं है यहां तक ​​कि पिछले सप्ताह के बाद से बदल गया. 489 00:22:59,560 --> 00:23:02,350 >> अब यह, समय पर तरह है उस में, सप्ताह शून्य में, याद 490 00:23:02,350 --> 00:23:04,110 हम इस तरह से एक फोन की किताब के साथ खेला. 491 00:23:04,110 --> 00:23:06,670 और यह जाहिर है कि भले ही कागज के भौतिक टुकड़े, 492 00:23:06,670 --> 00:23:09,150 आप की तरह के बारे में सोच सकते हैं एक सरणी के रूप में एक फोन की किताब. 493 00:23:09,150 --> 00:23:12,770 अगर तुम थे निश्चित रूप से, reimplement करने के लिए इस टुकड़े कागज के इन टुकड़ों 494 00:23:12,770 --> 00:23:15,260 एक कंप्यूटर में, शायद आप कुछ प्रयोग करेंगे 495 00:23:15,260 --> 00:23:20,270 एक सरणी उन के सभी स्टोर करने के लिए की तरह एक सभी तरह से नाम और नंबर 496 00:23:20,270 --> 00:23:23,800 जेड के माध्यम से तो इस वजह से अच्छा है, यह हमें एक अवसर देता है, 497 00:23:23,800 --> 00:23:28,310 आप कैसे हो सकता है शायद, पर विचार करने के लिए वास्तव में ऐसा कुछ को लागू करने. 498 00:23:28,310 --> 00:23:31,250 यहां दरवाजे की एक श्रृंखला के साथ के रूप में. 499 00:23:31,250 --> 00:23:36,380 मैं could-- तो अगर हम एक की जरूरत है ऊपर की ओर आने के लिए स्वयंसेवक. 500 00:23:36,380 --> 00:23:36,980 चलो देखते हैं. 501 00:23:36,980 --> 00:23:40,650 एक अपरिचित चेहरा शायद, शायद अपरिचित चेहरा. 502 00:23:40,650 --> 00:23:42,090 कैसे नारंगी में के बारे में? 503 00:23:42,090 --> 00:23:42,680 यहां. 504 00:23:42,680 --> 00:23:45,870 ऑरेंज शर्ट, ऊपर की ओर आते हैं. 505 00:23:45,870 --> 00:23:52,230 >> चलो अब और कदम आगे चलते हैं किनारे पर इन दरवाजों, 506 00:23:52,230 --> 00:23:54,020 एक पल के लिए रास्ते से बाहर इन चाल है. 507 00:23:54,020 --> 00:23:56,600 508 00:23:56,600 --> 00:23:57,760 आपका नाम क्या है? 509 00:23:57,760 --> 00:23:58,580 >> अजय: 510 00:23:58,580 --> 00:23:58,655 >> डेविड Malan: अजय. 511 00:23:58,655 --> 00:23:58,680 डेविड. 512 00:23:58,680 --> 00:23:59,451 आपसे मिलकर अच्छा लगा. 513 00:23:59,451 --> 00:23:59,950 ठीक है. 514 00:23:59,950 --> 00:24:04,500 इसलिए हम इन छह पीछे है screen-- पर डिजिटल दरवाजे 515 00:24:04,500 --> 00:24:07,810 पर या, बल्कि, सात दरवाजे संख्या की एक पूरी गुच्छा screen--. 516 00:24:07,810 --> 00:24:10,099 और मैं आपको कुछ नहीं बता दिया है में advance-- सहमत हो? 517 00:24:10,099 --> 00:24:11,140 अजय: अग्रिम में कुछ भी नहीं है. 518 00:24:11,140 --> 00:24:14,730 डेविड Malan: सब मैं आप करना चाहते हैं अब मेरे लिए मिल रहा है, और हमारे लिए, 519 00:24:14,730 --> 00:24:20,920 वास्तव में, संख्या 50, एक समय में एक कदम है. 520 00:24:20,920 --> 00:24:21,830 >> अजय: 50 नंबर? 521 00:24:21,830 --> 00:24:22,580 >> डेविड Malan: संख्या 50. 522 00:24:22,580 --> 00:24:24,746 और आप क्या कर सकते हैं प्रकट इन दरवाजों में से प्रत्येक के पीछे 523 00:24:24,746 --> 00:24:27,930 बस एक उंगली से छूकर. 524 00:24:27,930 --> 00:24:31,364 लानत है. [हंसी] 525 00:24:31,364 --> 00:24:34,560 >> [वाहवाही] 526 00:24:34,560 --> 00:24:39,540 >> बहुत अच्छी तरह से किया. 527 00:24:39,540 --> 00:24:40,400 ठीक. 528 00:24:40,400 --> 00:24:44,090 हम एक सुंदर उपहार है यहाँ आप के लिए पुरस्कार. 529 00:24:44,090 --> 00:24:46,520 सिनेमा की अपनी ले हम पिछले सप्ताह चर्चा की. 530 00:24:46,520 --> 00:24:47,362 >> अजय: ओह, आदमी. 531 00:24:47,362 --> 00:24:49,050 ओह, मैं Spaceballs कभी नहीं देखा. 532 00:24:49,050 --> 00:24:49,520 >> डेविड Malan: Spaceballs. 533 00:24:49,520 --> 00:24:50,140 ठीक है. 534 00:24:50,140 --> 00:24:53,790 तो बस एक पल रुको. 535 00:24:53,790 --> 00:24:57,430 चलो यह करते हैं How-- एक मेहनती moment-- 536 00:24:57,430 --> 00:25:00,412 आप के बारे में कैसे जाना था संख्या 50 ढूँढने? 537 00:25:00,412 --> 00:25:01,370 अजय: मैं बेतरतीब ढंग से चुना है. 538 00:25:01,370 --> 00:25:03,420 डेविड Malan: तो आप चुना बेतरतीब ढंग से और भाग्यशाली है. 539 00:25:03,420 --> 00:25:03,790 अजय: हाँ. 540 00:25:03,790 --> 00:25:04,456 डेविड Malan: ठीक है. 541 00:25:04,456 --> 00:25:05,050 बहुत बढ़िया. 542 00:25:05,050 --> 00:25:08,470 तो अब, आप नहीं था भाग्यशाली, क्या किसी और को मिल गया 543 00:25:08,470 --> 00:25:10,210 इन दरवाजों के पीछे हुआ होगा? 544 00:25:10,210 --> 00:25:12,930 मुझे आगे जाना है तो अगर और यहां इन नंबरों का पता चलता है, 545 00:25:12,930 --> 00:25:15,180 वे वास्तव में यादृच्छिक क्रम में हैं. 546 00:25:15,180 --> 00:25:17,750 और सबसे अच्छा तुम हो सकता किया, सच में,, अंततः, के द्वारा होता है 547 00:25:17,750 --> 00:25:19,410 सबसे खराब स्थिति में, उन सब की जाँच. 548 00:25:19,410 --> 00:25:23,000 तो तुम सुपर भाग्यशाली है जो हम एक एल्गोरिथ्म क्या कहते होता नहीं है. 549 00:25:23,000 --> 00:25:24,730 हाँ, बधाई हो. 550 00:25:24,730 --> 00:25:27,010 अगर तुम सकता है लेकिन अब, मुझे हास्य let's--. 551 00:25:27,010 --> 00:25:28,310 यहाँ इस टैब में चलते हैं. 552 00:25:28,310 --> 00:25:31,460 और यहाँ स्पष्ट रूप में नंबर हैं एक यादृच्छिक क्रम लगती है क्या, 553 00:25:31,460 --> 00:25:32,280 और वे थे. 554 00:25:32,280 --> 00:25:35,160 लेकिन अब मैं बजाय दावा अगर कि इन दरवाजों के पीछे 555 00:25:35,160 --> 00:25:39,070 क्रमबद्ध हैं कि संख्या हैं. 556 00:25:39,070 --> 00:25:41,780 लक्ष्य अब भी है हमें संख्या 50 हैं. 557 00:25:41,780 --> 00:25:45,910 लेकिन algorithmically करते हैं, और आप इसके बारे में जा रहे हैं हमें बताओ. 558 00:25:45,910 --> 00:25:48,020 आप यह पाते हैं, तो आप फिल्म रखना. 559 00:25:48,020 --> 00:25:49,520 आप यह है, आप इसे वापस दे नहीं पाते. 560 00:25:49,520 --> 00:25:52,720 561 00:25:52,720 --> 00:25:58,112 अजय: तो मैं सिरों की जाँच करने के लिए जा रहा हूँ पहला, there's-- निर्धारित करने के लिए 562 00:25:58,112 --> 00:26:02,048 [हँसी और तालियां] 563 00:26:02,048 --> 00:26:04,451 564 00:26:04,451 --> 00:26:05,492 डेविड Malan: यहाँ तुम जाओ. 565 00:26:05,492 --> 00:26:17,080 566 00:26:17,080 --> 00:26:21,700 के एक पर एक नज़र रखना अजय के पूर्ववर्तियों की, 567 00:26:21,700 --> 00:26:25,450 काफी के रूप में भाग्यशाली नहीं था जो सीन,. 568 00:26:25,450 --> 00:26:28,670 ठीक है, यहाँ अपने काम के लिए तो, शॉन, पीछा कर रहा है. 569 00:26:28,670 --> 00:26:32,970 मैं इन के पीछे छिपा हुआ है दरवाजे संख्या सात, 570 00:26:32,970 --> 00:26:37,200 लेकिन इन दरवाजों में से कुछ में दूर tucked साथ ही अन्य गैर नकारात्मक संख्या रहे हैं. 571 00:26:37,200 --> 00:26:40,730 और अपने लक्ष्य को इस के बारे में सोच रहा है सिर्फ एक सरणी के रूप में संख्या की शीर्ष पंक्ति. 572 00:26:40,730 --> 00:26:43,590 हम टुकड़ों में से सिर्फ एक दृश्य हो उनके पीछे संख्या के साथ कागज की. 573 00:26:43,590 --> 00:26:47,640 और अपने लक्ष्य को केवल शीर्ष का उपयोग है, सरणी यहाँ, मुझे संख्या सात लगता है. 574 00:26:47,640 --> 00:26:51,200 और हम तो आलोचना करने के लिए जा रहे हैं आप इसे कर के बारे में जाने कैसे. 575 00:26:51,200 --> 00:26:52,920 , हमें नंबर सात कृपया लगाएं. 576 00:26:52,920 --> 00:27:02,570 577 00:27:02,570 --> 00:27:03,070 सं 578 00:27:03,070 --> 00:27:06,760 579 00:27:06,760 --> 00:27:08,179 5, 19, 13. 580 00:27:08,179 --> 00:27:16,752 581 00:27:16,752 --> 00:27:17,835 यह एक चाल सवाल नहीं है. 582 00:27:17,835 --> 00:27:21,420 583 00:27:21,420 --> 00:27:21,920 1. 584 00:27:21,920 --> 00:27:26,715 585 00:27:26,715 --> 00:27:29,840 इस बिंदु पर अपने स्कोर बहुत नहीं है अच्छा, तो आप के रूप में अच्छी तरह से जा रहा रख सकता है. 586 00:27:29,840 --> 00:27:32,870 587 00:27:32,870 --> 00:27:33,370 3. 588 00:27:33,370 --> 00:27:38,570 589 00:27:38,570 --> 00:27:39,802 पर जाएँ. 590 00:27:39,802 --> 00:27:42,510 सच कहूँ तो, मुझे लगता है, लेकिन मदद नहीं आश्चर्य कर सकते हैं क्या आप के बारे में भी सोच रहे हैं. 591 00:27:42,510 --> 00:27:44,990 >> शॉन: मैं केवल शीर्ष पंक्ति से ले जा सकते हैं. 592 00:27:44,990 --> 00:27:46,240 डेविड Malan: केवल शीर्ष पंक्ति. 593 00:27:46,240 --> 00:27:47,281 तो आप तीन छोड़ दिया गया. 594 00:27:47,281 --> 00:27:48,310 तो मुझे 7 लगता है. 595 00:27:48,310 --> 00:27:54,758 596 00:27:54,758 --> 00:27:59,141 >> [दर्शकों सुझाव चीखती] 597 00:27:59,141 --> 00:28:22,210 598 00:28:22,210 --> 00:28:26,130 तो उन दोनों के अद्भुत थे बहुत अलग कारणों के लिए. 599 00:28:26,130 --> 00:28:29,150 तो यह वह जगह है जहाँ हम एक पल पहले से दूर छोड़ दिया, 600 00:28:29,150 --> 00:28:32,530 और यहाँ कुंजी अंतर्दृष्टि इन दरवाजों संख्या थी 601 00:28:32,530 --> 00:28:37,390 उनके पीछे कि आदर्श, हल किया गया जिसके लिए takeaway आप कर सकता है 602 00:28:37,390 --> 00:28:39,670 में मौलिक बेहतर इस दूसरे example-- 603 00:28:39,670 --> 00:28:42,380 और, वास्तव में, कि शॉन था यादृच्छिक संख्या के साथ पहला प्रयास 604 00:28:42,380 --> 00:28:45,460 बस के रूप में before-- लेकिन जैसे ही इन नंबरों हल कर रहे हैं के रूप में, 605 00:28:45,460 --> 00:28:47,980 फोन की किताब बहुत पसंद है, आप स्पष्ट रूप से क्या कर सकता है? 606 00:28:47,980 --> 00:28:50,090 या आप कैसे है कि ज्ञान का लाभ उठाने कर सकते हैं? 607 00:28:50,090 --> 00:28:51,530 हाँ. 608 00:28:51,530 --> 00:28:54,910 >> दर्शक: आप [अश्राव्य] आधे रास्ते जाओ. 609 00:28:54,910 --> 00:28:55,660 डेविड Malan: हाँ. 610 00:28:55,660 --> 00:28:56,160 बिल्कुल सही. 611 00:28:56,160 --> 00:28:59,680 तो अजय के प्रारंभिक वृत्ति था मुझे याद है, सिरों की जांच करने के लिए, 612 00:28:59,680 --> 00:29:02,320 और फिर हम एक तरह से समाप्त जल्दी उदाहरण. 613 00:29:02,320 --> 00:29:05,220 हम शुरू कर दिया लेकिन अगर यह अधिक करने के लिए विधिपूर्वक उन पंक्तियों के साथ, 614 00:29:05,220 --> 00:29:07,860 लेकिन में शायद शुरू मध्य, वे हल कर रहे हैं क्योंकि, 615 00:29:07,860 --> 00:29:10,900 जैसे ही हमें पता चलता है के रूप में संख्या 16, इसलिए हम know-- 616 00:29:10,900 --> 00:29:14,850 और हम that-- बिल्कुल करते हैं इसलिए पता 50 कि, आज के मामले में, 617 00:29:14,850 --> 00:29:16,080 सही करने के लिए हो गया है. 618 00:29:16,080 --> 00:29:18,735 तो बस की तरह सप्ताह शून्य जब में हम छमाही में फोन पुस्तक फाड़े 619 00:29:18,735 --> 00:29:21,490 और के आधे से फेंक दिया दूर समस्या, यहाँ एक ही विचार है. 620 00:29:21,490 --> 00:29:23,680 हम इस आधे फेंक कर सकते हैं समस्या का दूर. 621 00:29:23,680 --> 00:29:25,730 और शायद तुम क्या algorithmically कर सकता है, 622 00:29:25,730 --> 00:29:28,710 आप 50 होना चाहिए पता है कि एक बार सही करने के लिए, यह कहीं भी है, 623 00:29:28,710 --> 00:29:31,390 बीच में, वहाँ की कोशिश है शेष दरवाजे की. 624 00:29:31,390 --> 00:29:33,450 बेशक, 50 अधिक है 42 से अधिक है, तो हम कर सकते हैं 625 00:29:33,450 --> 00:29:36,060 इस शेष फेंक दूर समस्या की तिमाही, 626 00:29:36,060 --> 00:29:38,510 और, अंत में, की पहचान 50 की तरह कुछ. 627 00:29:38,510 --> 00:29:41,050 लेकिन बस के रूप में साथ फोन की किताब, इन नंबरों 628 00:29:41,050 --> 00:29:44,560 में पहले से ही हमारे लिए दिया गया हल आदेश, हमें जो पत्ते 629 00:29:44,560 --> 00:29:47,450 सवाल के साथ, आप कैसे करते हैं क्रमबद्ध क्रम में बातें हो? 630 00:29:47,450 --> 00:29:49,640 और, सच में, किस कीमत पर? 631 00:29:49,640 --> 00:29:51,390 यह होना एक बात है फोन की किताब सौंप दिया 632 00:29:51,390 --> 00:29:54,810 और फिर खोजने के द्वारा अपने मित्रों को प्रभावित सही वास्तव में जल्दी से एक फोन नंबर,? 633 00:29:54,810 --> 00:29:58,520 एक खोजने के लिए 32 पन्नों को फाड़ 4 अरब पृष्ठों के बाहर व्यक्ति, 634 00:29:58,520 --> 00:30:00,470 हम एक चरम उदाहरण था. 635 00:30:00,470 --> 00:30:03,320 लेकिन कितना समय लगा था Verizon कि फोन की किताब सॉर्ट करने के लिए? 636 00:30:03,320 --> 00:30:06,170 यह हमें ले गए थे कितना समय इन सात संख्या सॉर्ट करने के लिए? 637 00:30:06,170 --> 00:30:10,110 यही कारण है कि हम है कि एक सवाल है इस प्रकार अब तक पूरी तरह से नजरअंदाज कर दिया. 638 00:30:10,110 --> 00:30:12,330 >> तो चलो अब इस सवाल का जवाब देना. 639 00:30:12,330 --> 00:30:15,920 और अब हम सभी फिल्मों से बाहर रहे हैं, लेकिन हम कुछ तनाव गेंदों है. 640 00:30:15,920 --> 00:30:19,480 आठ स्वयंसेवकों का कहना है, यदि यहाँ हमें शामिल होने के मन नहीं होता? 641 00:30:19,480 --> 00:30:24,100 कैसे के बारे में है, चलो आगे चलते हैं और करते हैं आप में से चार, यहाँ आप के तीन? 642 00:30:24,100 --> 00:30:25,290 कुछ नए चेहरे. 643 00:30:25,290 --> 00:30:27,220 और वहाँ तुम में से चार? 644 00:30:27,220 --> 00:30:30,760 और हम नहीं पूर्वाग्रह जाने now-- here-- और यहाँ अंत पर खत्म संख्या आठ. 645 00:30:30,760 --> 00:30:32,060 ऊपर आओ. 646 00:30:32,060 --> 00:30:32,560 ठीक है. 647 00:30:32,560 --> 00:30:37,480 इसलिए हम यहाँ के लिए क्या किया तुम में से हर एक संख्या है. 648 00:30:37,480 --> 00:30:40,055 आप जाना चाहते हैं आगे, इस नंबर ले. 649 00:30:40,055 --> 00:30:40,763 आपका नाम क्या है? 650 00:30:40,763 --> 00:30:41,950 >> आर्टी: आर्टी. 651 00:30:41,950 --> 00:30:43,100 >> डेविड Malan: आर्टी, ठीक है. 652 00:30:43,100 --> 00:30:44,297 आप नंबर 1 रहे हैं. 653 00:30:44,297 --> 00:30:45,310 >> अमीन: अमीन. 654 00:30:45,310 --> 00:30:46,060 डेविड Malan: अमीन. 655 00:30:46,060 --> 00:30:46,820 डेविड. 656 00:30:46,820 --> 00:30:47,530 आप संख्या 2 हो. 657 00:30:47,530 --> 00:30:49,100 मैं हाथ के रूप में और, आगे बढ़ो आप कागज की चादरें, 658 00:30:49,100 --> 00:30:52,130 संगीत के सामने अपने आप को अप लाइन वहाँ के रूप में एक ही क्रम में खड़ा है. 659 00:30:52,130 --> 00:30:52,660 >> एंडी: हाय, एंडी. 660 00:30:52,660 --> 00:30:53,970 >> डेविड Malan: एंडी, यह आप को देखने के लिए अच्छा है. 661 00:30:53,970 --> 00:30:54,520 नंबर 3. 662 00:30:54,520 --> 00:30:55,310 >> याकूब: याकूब. 663 00:30:55,310 --> 00:30:56,760 >> डेविड Malan: याकूब, नंबर 4. 664 00:30:56,760 --> 00:30:57,549 नाव पर स्वागत. 665 00:30:57,549 --> 00:30:58,090 अनुदान: अनुदान. 666 00:30:58,090 --> 00:30:58,881 डेविड Malan: अनुदान. 667 00:30:58,881 --> 00:31:00,348 संख्या 5. 668 00:31:00,348 --> 00:31:01,200 >> Alanna: Alanna. 669 00:31:01,200 --> 00:31:02,766 >> डेविड Malan: Alanna, संख्या 6. 670 00:31:02,766 --> 00:31:03,589 >> फ्रांसिस: फ्रांसिस. 671 00:31:03,589 --> 00:31:04,880 डेविड Malan: फ्रांसिस, संख्या 7. 672 00:31:04,880 --> 00:31:05,200 और? 673 00:31:05,200 --> 00:31:05,830 >> : राहेल राहेल. 674 00:31:05,830 --> 00:31:06,815 >> डेविड Malan: राहेल, संख्या 8. 675 00:31:06,815 --> 00:31:07,100 ठीक है. 676 00:31:07,100 --> 00:31:08,766 आगे बढ़ो और इस क्रम में अपने आप को मिलता है. 677 00:31:08,766 --> 00:31:11,440 मुझे शेष एक डाल दिया संगीत जगह में खड़े हो जाओ. 678 00:31:11,440 --> 00:31:13,670 कहां आप एक स्टैंड की जरूरत है? 679 00:31:13,670 --> 00:31:14,170 ठीक. 680 00:31:14,170 --> 00:31:18,710 आगे बढ़ो और सिर्फ अपनी संख्या डाला जहां दर्शकों को उन पर देख सकते हैं, 681 00:31:18,710 --> 00:31:20,340 संगीत जावक का सामना करना पड़ खड़े हो जाओ. 682 00:31:20,340 --> 00:31:27,240 और उम्मीद है, हमारी पहली मानसिक स्वास्थ्य की जांच here-- 4, 2, 6. 683 00:31:27,240 --> 00:31:27,890 ओह ओह. 684 00:31:27,890 --> 00:31:29,070 ज़रा ठहरिये. 685 00:31:29,070 --> 00:31:31,140 हम एक 8 नहीं है. 686 00:31:31,140 --> 00:31:35,180 मैं तुम से बेदखल करने की जरूरत है किसी भी तरह उदाहरण. 687 00:31:35,180 --> 00:31:35,680 सं 688 00:31:35,680 --> 00:31:36,940 नहीं, वह ठीक है. 689 00:31:36,940 --> 00:31:37,890 चलो देखते हैं. 690 00:31:37,890 --> 00:31:38,880 हम ऐसा कर सकते हैं. 691 00:31:38,880 --> 00:31:39,440 समर्थन करना. 692 00:31:39,440 --> 00:31:43,970 693 00:31:43,970 --> 00:31:45,740 हम वहाँ जाना. 694 00:31:45,740 --> 00:31:46,800 सही. 695 00:31:46,800 --> 00:31:47,360 ठीक है. 696 00:31:47,360 --> 00:31:50,260 तो, अब हम 8, 1, 3 से 7, 5 है. 697 00:31:50,260 --> 00:31:50,760 ठीक. 698 00:31:50,760 --> 00:31:51,360 बहुत बढ़िया. 699 00:31:51,360 --> 00:31:54,400 >> तो हाथ पर सवाल है, क्या लागत, और क्या विधि के माध्यम से, 700 00:31:54,400 --> 00:31:58,580 हम वास्तव में यहाँ इन नंबरों तरह कर सकते हैं हम एक तरह से पीछे की ओर काम कर सकते हैं तो, 701 00:31:58,580 --> 00:32:02,759 अंत में, और decide-- यह सच है प्रभावशाली, यह वास्तव में कुशल है, 702 00:32:02,759 --> 00:32:04,550 मैं विभाजित कर सकते हैं कि और एक फोन की किताब को जीत? 703 00:32:04,550 --> 00:32:06,716 यह है कि वास्तव में कुशल मैं विभाजन और जीत सकते हैं 704 00:32:06,716 --> 00:32:08,600 उन डिजिटल टुकड़े बोर्ड पर कागज की, 705 00:32:08,600 --> 00:32:14,500 यह हमें एक लागत जा रहा है हो सकता है अगर समय या ऊर्जा या CPU चक्र में भाग्य 706 00:32:14,500 --> 00:32:17,340 वास्तव में हमारे डेटा प्राप्त करने के लिए कुछ हल क्रम में? 707 00:32:17,340 --> 00:32:18,930 तो चलो कि प्रश्न पूछते हैं. 708 00:32:18,930 --> 00:32:22,077 >> तो सबसे पहले, इन नंबरों हैं बहुत ज्यादा यादृच्छिक क्रम में, 709 00:32:22,077 --> 00:32:24,160 और मैं प्रस्ताव करने के लिए जा रहा हूँ एक एल्गोरिथ्म, या प्रक्रिया 710 00:32:24,160 --> 00:32:25,970 जिसके द्वारा हम इन लोगों को सॉर्ट कर सकते हैं. 711 00:32:25,970 --> 00:32:28,100 मैं दृष्टिकोण करने के लिए जा रहा हूँ इस सुंदर भोलेपन से. 712 00:32:28,100 --> 00:32:30,730 और मैं पहचान करने के लिए जा रहा हूँ यह मेरे लिए एक बहुत की तरह है कि 713 00:32:30,730 --> 00:32:32,890 आसपास मेरे मन लपेटो पूरे डेटा पर एक बार सेट. 714 00:32:32,890 --> 00:32:33,640 लेकिन क्या आप जानते हैं? 715 00:32:33,640 --> 00:32:37,450 मैं कुछ करने जा रहा हूँ बहुत सरल सीमांत हल करता है. 716 00:32:37,450 --> 00:32:41,152 4 और 2 हैं, क्रम से बाहर हैं लक्ष्य 8 से ऊपर पर 1 से जाने के लिए है. 717 00:32:41,152 --> 00:32:41,860 तो क्या आप जानते हैं? 718 00:32:41,860 --> 00:32:43,776 मैं आपके पास करने के लिए जा रहा हूँ आप स्विच लोग, स्वैप 719 00:32:43,776 --> 00:32:46,380 शारीरिक रूप से स्थिति और कागज के अपने टुकड़े. 720 00:32:46,380 --> 00:32:47,894 अब 4 और 6, इन क्रम में हैं. 721 00:32:47,894 --> 00:32:49,060 मैं उन हो छोड़ने के लिए जा रहा हूँ. 722 00:32:49,060 --> 00:32:50,227 6 और 8, उन क्रम में हैं. 723 00:32:50,227 --> 00:32:51,185 उन्हें छोड़ने के लिए जा रहे हैं. 724 00:32:51,185 --> 00:32:52,170 आदेश में से 8 AND1,. 725 00:32:52,170 --> 00:32:54,790 आप दो गमागमन बुरा नहीं होता. 726 00:32:54,790 --> 00:32:57,300 अब 8 और 3, तुम लोगों को स्वैप कर सकता है. 727 00:32:57,300 --> 00:32:59,320 8 और 7, तुम लोगों को स्वैप कर सकता है. 728 00:32:59,320 --> 00:33:01,790 और 8 और 5, तुम लोगों को स्वैप कर सकता है. 729 00:33:01,790 --> 00:33:03,980 >> अब, मैं कर रहा हूँ? 730 00:33:03,980 --> 00:33:05,200 नहीं, कतई नहीं. 731 00:33:05,200 --> 00:33:07,880 लेकिन मैं बना दिया है बेहतर स्थिति, है ना? 732 00:33:07,880 --> 00:33:09,430 अपना नाम फिर क्या था, संख्या 8? 733 00:33:09,430 --> 00:33:10,055 >> : राहेल राहेल. 734 00:33:10,055 --> 00:33:12,850 डेविड Malan: तो राहेल है प्रभावी ढंग से बहुत दूर ऊपर bubbled, 735 00:33:12,850 --> 00:33:15,660 के अंत के लिए सभी तरह यहाँ संख्या के अपने सरणी. 736 00:33:15,660 --> 00:33:17,310 और ऐसा लगता है कि समस्या तरह का हल है. 737 00:33:17,310 --> 00:33:21,670 अब, स्पष्ट रूप से, 2 अभी भी करने की जरूरत है एक सा कदम है, और 4 और 6 और 1. 738 00:33:21,670 --> 00:33:24,420 लेकिन मैं एक मिल गया है लगता समाधान के करीब छोटी. 739 00:33:24,420 --> 00:33:26,790 तो चलो इस एक ही लागू होते हैं फिर अनुभवहीन अनुमानी. 740 00:33:26,790 --> 00:33:27,690 2 और 4, ठीक है. 741 00:33:27,690 --> 00:33:28,810 4 और 6, ठीक है. 742 00:33:28,810 --> 00:33:29,930 6 और 1, मिमी मिमी. 743 00:33:29,930 --> 00:33:32,230 के स्वैप करते हैं. 744 00:33:32,230 --> 00:33:33,200 6 और 3, मिमी मिमी. 745 00:33:33,200 --> 00:33:34,420 के स्वैप करते हैं. 746 00:33:34,420 --> 00:33:35,580 6 और 7 ठीक है. 747 00:33:35,580 --> 00:33:36,590 7 और 5, नहींं. 748 00:33:36,590 --> 00:33:37,790 के स्वैप करते हैं. 749 00:33:37,790 --> 00:33:38,470 और अब 7 और 8. 750 00:33:38,470 --> 00:33:39,862 और अपना नाम फिर क्या है? 751 00:33:39,862 --> 00:33:40,570 फ्रांसिस: फ्रांसिस. 752 00:33:40,570 --> 00:33:41,445 डेविड Malan: फ्रांसिस. 753 00:33:41,445 --> 00:33:44,230 तो अब फ्रांसिस भी एक बेहतर है स्थिति, अब 7 और 8 क्योंकि 754 00:33:44,230 --> 00:33:46,440 सही तरीके से ऊपर तक bubbled कर रहे हैं. 755 00:33:46,440 --> 00:33:47,510 तो 2 और 4, ठीक है. 756 00:33:47,510 --> 00:33:48,720 4 और 1, चलो स्वैप. 757 00:33:48,720 --> 00:33:50,410 4 और 3, चलो स्वैप. 758 00:33:50,410 --> 00:33:51,550 4 और 6, आप ठीक कह रहे हैं. 759 00:33:51,550 --> 00:33:53,340 6 और 5 है, चलो स्वैप. 760 00:33:53,340 --> 00:33:54,590 और अब उन लोगों को अच्छा कर रहे हैं. 761 00:33:54,590 --> 00:33:55,780 हम लगभग वहाँ रहे हैं. 762 00:33:55,780 --> 00:33:57,706 2 और 1, क्रम से बाहर है, तो स्वैप. 763 00:33:57,706 --> 00:33:59,080 और अब मुझे एक मानसिक स्वास्थ्य की जांच करते हैं. 764 00:33:59,080 --> 00:34:03,080 2 और 3, 3 और 4, 4 और 5, 5 और 6, 6 और 7, 8. 765 00:34:03,080 --> 00:34:05,060 ठीक है, तो हम कर रहे हैं. 766 00:34:05,060 --> 00:34:09,310 >> लेकिन क्या पर लागत मैंने किया यहां इन नंबरों तरह? 767 00:34:09,310 --> 00:34:13,960 खैर, कितने कदम संभावित मैंने किया इन लोगों छँटाई जब ले? 768 00:34:13,960 --> 00:34:15,710 खैर, हम वापस उस प्रश्न के लिए आया हूँ. 769 00:34:15,710 --> 00:34:18,030 लेकिन, सच में, तुम मिल गया एक छोटे से ऊब, कि 770 00:34:18,030 --> 00:34:22,270 एक तरह से यह नहीं था कि में खुलासा शायद सबसे कुशल एल्गोरिथ्म. 771 00:34:22,270 --> 00:34:25,230 और वास्तव में, स्पष्ट रूप से, मुझे पसीना आ रहा हूँ सभी को और अधिक आगे पीछे चल रहा है. 772 00:34:25,230 --> 00:34:26,639 यही कारण है कि विशेष रूप से कुशल महसूस नहीं किया था. 773 00:34:26,639 --> 00:34:27,805 तो चलो कुछ और कोशिश करते हैं. 774 00:34:27,805 --> 00:34:31,870 तुम लोगों को फिर से कायम कर सकता है इन आठ मूल्यों के लिए अपने आप को. 775 00:34:31,870 --> 00:34:32,969 बहुत बढ़िया. 776 00:34:32,969 --> 00:34:36,570 >> बस के लिए, डिजिटल एक नज़र रखना एक पल हम कुछ और प्रयास करने से पहले 777 00:34:36,570 --> 00:34:38,179 बस क्या हुआ. 778 00:34:38,179 --> 00:34:41,330 यहाँ तक, आप एक को देखने के लिए कर रहे हैं इन आठ मनुष्य के दृश्य 779 00:34:41,330 --> 00:34:44,719 जिससे नीले और लाल सलाखों संख्या का प्रतिनिधित्व करते हैं. 780 00:34:44,719 --> 00:34:46,670 लम्बे बार, बड़ी संख्या. 781 00:34:46,670 --> 00:34:48,510 छोटा बार, संख्या में छोटे. 782 00:34:48,510 --> 00:34:51,560 और क्या आप देखने जा रहे है उनमें से आठ से अधिक यादृच्छिक क्रम. 783 00:34:51,560 --> 00:34:55,830 आप इन सलाखों को देखने के लिए जा रहे हैं कि एक ही एल्गोरिथ्म के अनुसार क्रमबद्ध रही, 784 00:34:55,830 --> 00:34:59,890 या, निर्देश का सेट जो हम बुलबुला तरह आगे से फोन करता हूँ. 785 00:34:59,890 --> 00:35:04,000 तो, दूसरे या तो हर नोटिस दो बार, लाल रंग में प्रकाश व्यवस्था कर रहे हैं 786 00:35:04,000 --> 00:35:05,590 कंप्यूटर से तुलना की जा रही है. 787 00:35:05,590 --> 00:35:08,630 और फिर अगर बड़ा बार और छोटी सी पट्टी, क्रम से बाहर हैं 788 00:35:08,630 --> 00:35:11,220 वे मेरे लिए बदली जा रही हैं. 789 00:35:11,220 --> 00:35:15,120 >> अब यह अविश्वसनीय रूप से कठिन है निश्चित रूप से, यह देखने के लिए, 790 00:35:15,120 --> 00:35:18,630 बहुत लंबे समय के लिए, लेकिन नोटिस सही करने के लिए आगे बढ़ बड़ी सलाखों takeaway-- 791 00:35:18,630 --> 00:35:20,460 बाईं ओर आगे बढ़ थोड़ा सलाखों. 792 00:35:20,460 --> 00:35:23,380 इस प्रक्रिया को निरस्त करने दें और इस गति 793 00:35:23,380 --> 00:35:27,330 बहुत तेजी से हो, तो हम कर सकते हैं करने के लिए क्या का एक उच्च स्तरीय भावना हो, 794 00:35:27,330 --> 00:35:29,970 दरअसल, बुलबुला तरह से कर रही है. 795 00:35:29,970 --> 00:35:33,150 दरअसल, यह करने के लिए उत्साह से भरा हुआ है सूची के दाहिने हाथ की ओर, 796 00:35:33,150 --> 00:35:35,260 या सरणी, बड़ा सलाखों. 797 00:35:35,260 --> 00:35:40,020 और इसके विपरीत, छोटे सलाखों के हैं बाईं ओर नीचे उनके रास्ते बुदबुदाती, 798 00:35:40,020 --> 00:35:42,950 एक तेज गति से यद्यपि की तुलना में हम पहले किया था. 799 00:35:42,950 --> 00:35:45,850 तो, कठिन मनुष्यों के साथ देखने के लिए, लेकिन नेत्रहीन कि वास्तव में क्या हो रहा है 800 00:35:45,850 --> 00:35:46,540 हो रहा था. 801 00:35:46,540 --> 00:35:49,110 >> लेकिन मौलिक एक कोशिश करते हैं अब अलग दृष्टिकोण. 802 00:35:49,110 --> 00:35:52,387 की एक अलग से कोशिश करते हैं एल्गोरिथ्म हम तुम्हारे पास है जिससे 803 00:35:52,387 --> 00:35:59,640 लोग इन मूल में शुरू इस क्रम यहाँ था जो स्थिति है,. 804 00:35:59,640 --> 00:36:00,827 और चलो अब आगे चलते हैं. 805 00:36:00,827 --> 00:36:02,910 और मैं कुछ करने जा रहा हूँ भी सरल, सही? 806 00:36:02,910 --> 00:36:06,710 पीछे मुड़कर देखें, फिर से जोड़ो में गमागमन और फिर, लगभग एक छोटी चालाक. 807 00:36:06,710 --> 00:36:10,460 , चलो भी अधिक भोलेपन से बातें करते हैं जहां मैं इन लोगों को सॉर्ट करना चाहते हैं, 808 00:36:10,460 --> 00:36:12,560 मुझे बस देखते रहो जाने छोटी तत्व के लिए. 809 00:36:12,560 --> 00:36:14,570 इसलिए अभी, 4 मैंने देखा है सबसे छोटी संख्या. 810 00:36:14,570 --> 00:36:15,695 मुझे लगता है कि याद करने के लिए जा रहा हूँ. 811 00:36:15,695 --> 00:36:17,750 नहीं, 2 बेहतर है, और याद है कि. 812 00:36:17,750 --> 00:36:20,730 1 भी छोटा होता है. 813 00:36:20,730 --> 00:36:21,970 3, 7, 5. 814 00:36:21,970 --> 00:36:22,470 ठीक. 815 00:36:22,470 --> 00:36:23,750 One-- अपना नाम फिर क्या है? 816 00:36:23,750 --> 00:36:24,400 >> आर्टी: आर्टी. 817 00:36:24,400 --> 00:36:24,610 >> डेविड Malan: आर्टी. 818 00:36:24,610 --> 00:36:25,460 तो, आर्टी, आगे बढ़ो. 819 00:36:25,460 --> 00:36:27,043 मैं रेखा से बाहर खींचने के लिए जा रहा हूँ. 820 00:36:27,043 --> 00:36:28,400 आप यहाँ वापस आ सकता है. 821 00:36:28,400 --> 00:36:30,790 और मैं उसके लिए कमरा बनाने की जरूरत है. 822 00:36:30,790 --> 00:36:32,040 हम यहाँ एक निर्णय बिंदु है. 823 00:36:32,040 --> 00:36:36,000 हम यहाँ आर्टी के लिए जगह बनाने कैसे हो सकता है संख्या 1 के अंतर्गत आता है जहां शुरुआत में? 824 00:36:36,000 --> 00:36:36,770 >> दर्शक: पाली. 825 00:36:36,770 --> 00:36:38,950 >> डेविड Malan: ठीक है, हम हर कोई बदलाव कर सकता है. 826 00:36:38,950 --> 00:36:40,860 लेकिन एक अनुकूलन प्रस्ताव. 827 00:36:40,860 --> 00:36:43,410 यह एक छोटे से परेशान लगता है मुझे चार लोगों को पूछने के लिए 828 00:36:43,410 --> 00:36:44,620 सभी तरह से नीचे ले जाने के लिए. 829 00:36:44,620 --> 00:36:45,520 मैं और क्या कर सकता है? 830 00:36:45,520 --> 00:36:46,360 >> दर्शक: उन्हें स्विच. 831 00:36:46,360 --> 00:36:46,850 >> डेविड Malan: उन्हें स्विच. 832 00:36:46,850 --> 00:36:47,900 और अपना नाम फिर क्या है? 833 00:36:47,900 --> 00:36:48,441 >> याकूब: याकूब. 834 00:36:48,441 --> 00:36:50,330 डेविड Malan: याकूब, चाल है. 835 00:36:50,330 --> 00:36:54,440 बहुत अधिक कुशल बस को आर्टी साथ याकूब स्वैप स्थानों, 836 00:36:54,440 --> 00:36:56,710 मजबूर करने का विरोध किया इन लोगों के सभी चार, 837 00:36:56,710 --> 00:36:58,734 करने के लिए, आपको बहुत बहुत धन्यवाद उनकी सही स्थिति. 838 00:36:58,734 --> 00:37:01,150 क्या अब आर्टी के बारे में अच्छा है, वह अपनी सही स्थिति में है. 839 00:37:01,150 --> 00:37:02,060 चलो फिर से यह करते हैं. 840 00:37:02,060 --> 00:37:03,730 2, कि मैंने देखा है सबसे छोटी संख्या है. 841 00:37:03,730 --> 00:37:05,690 3, 7, 5. 842 00:37:05,690 --> 00:37:06,190 ठीक. 843 00:37:06,190 --> 00:37:07,467 2 निश्चित रूप से सबसे छोटी है. 844 00:37:07,467 --> 00:37:08,550 कोई भी काम करने के लिए नहीं है. 845 00:37:08,550 --> 00:37:09,320 चलो फिर से ऐसा करते हैं. 846 00:37:09,320 --> 00:37:10,070 6. 847 00:37:10,070 --> 00:37:10,640 सबसे छोटा? 848 00:37:10,640 --> 00:37:11,140 8. 849 00:37:11,140 --> 00:37:11,590 नहींं. 850 00:37:11,590 --> 00:37:11,720 4? 851 00:37:11,720 --> 00:37:12,220 ऊह. 852 00:37:12,220 --> 00:37:13,420 मुझे 4 याद करते हैं. 853 00:37:13,420 --> 00:37:13,950 3. 854 00:37:13,950 --> 00:37:15,110 मुझे 3 याद करते हैं. 855 00:37:15,110 --> 00:37:16,080 7, 5. 856 00:37:16,080 --> 00:37:18,490 मैं सबसे छोटी संख्या इस पास पर देखा 3 है. 857 00:37:18,490 --> 00:37:20,340 तुम बाहर पर आया था तो. 858 00:37:20,340 --> 00:37:21,986 हम कहाँ तुम डाल करने के लिए जा रहे हैं? 859 00:37:21,986 --> 00:37:22,860 और तुम्हारा नाम क्या है? 860 00:37:22,860 --> 00:37:23,530 >> Alanna: Alanna. 861 00:37:23,530 --> 00:37:25,780 >> डेविड Malan: Alanna, हम कर रहे हैं आप को बेदखल करने के लिए किया जा रहा है. 862 00:37:25,780 --> 00:37:28,670 लेकिन वह अधिक कुशल है सिर्फ दो लोगों को स्वैप करने के लिए, 863 00:37:28,670 --> 00:37:31,850 कई लोगों के लिए की तुलना वास्तव में अधिक टलना. 864 00:37:31,850 --> 00:37:32,850 अब फिर से यह करते हैं. 865 00:37:32,850 --> 00:37:34,980 मैं 4 का चयन करें, तो बाहर आने के लिए जा रहा हूँ. 866 00:37:34,980 --> 00:37:36,540 और जो स्थानांतरित करने के लिए जा रहा है? 867 00:37:36,540 --> 00:37:37,750 नंबर 8, बेशक. 868 00:37:37,750 --> 00:37:40,260 मैं अब नंबर 5 पाते हैं, पर बाहर आ गए. 869 00:37:40,260 --> 00:37:42,104 संख्या 8 फिर बेदखल हो रहा है. 870 00:37:42,104 --> 00:37:43,770 मैं अब जगह में नंबर 6 खोजने के लिए जा रहा हूँ. 871 00:37:43,770 --> 00:37:44,410 जगह में 7. 872 00:37:44,410 --> 00:37:45,080 जगह में 8. 873 00:37:45,080 --> 00:37:48,590 >> क्या हम अभी किया है चयन क्रमबद्ध कुछ कहा, 874 00:37:48,590 --> 00:37:52,560 हम यह कल्पना तो और, यह बात है एक छोटे से अलग महसूस करने के लिए जा रहा है. 875 00:37:52,560 --> 00:37:56,800 आगे और इस से चलते हैं मेनू यहाँ, इस visualization-- 876 00:37:56,800 --> 00:38:02,920 की, Firefox पर आ to-- इस बदलते हैं. 877 00:38:02,920 --> 00:38:07,610 का चयन क्रमबद्ध करने के लिए इसे बदल दें. 878 00:38:07,610 --> 00:38:11,830 और के रूप में पहले यह गति करते हैं, और अब दृश्य शुरू. 879 00:38:11,830 --> 00:38:13,990 और इस एल्गोरिथ्म है यह करने के लिए एक अलग लग रहा. 880 00:38:13,990 --> 00:38:16,480 प्रत्येक यात्रा पर, सच में, यह और भी अधिक स्पष्ट है. 881 00:38:16,480 --> 00:38:18,385 मैं सिर्फ छोटी तत्व चयन कर रहा हूँ. 882 00:38:18,385 --> 00:38:21,510 अब, सच कहूँ तो, मुझे लगता है कि एक छोटे से भाग्यशाली है समय, उस में यह सुपर फास्ट हल. 883 00:38:21,510 --> 00:38:22,660 तत्वों यादृच्छिक थे. 884 00:38:22,660 --> 00:38:25,520 यह रूप में हम अंत में हूँ, नहीं है मौलिक तेजी, देखें. 885 00:38:25,520 --> 00:38:29,400 लेकिन एक तीसरा और अंतिम देखते हैं क्या हो रहा है के रूप में यहाँ दृष्टिकोण. 886 00:38:29,400 --> 00:38:36,230 तो चलो आगे चलते हैं और तुम लोगों को रीसेट एक अंतिम समय यहाँ इस क्रम में किया जाना है. 887 00:38:36,230 --> 00:38:38,450 >> और अब, मैं जा रहा हूँ , एक छोटे से अधिक चतुर हो 888 00:38:38,450 --> 00:38:40,220 बस हमारे एल्गोरिदम बाहर दौर. 889 00:38:40,220 --> 00:38:41,230 मैं यह करने के लिए जा रहा हूँ. 890 00:38:41,230 --> 00:38:43,140 मैं नहीं जा रहा हूँ आगे पीछे इतना. 891 00:38:43,140 --> 00:38:44,900 सच कहूँ, मैं थक गया हूँ यह सब traversing. 892 00:38:44,900 --> 00:38:47,691 मैं सिर्फ मैं क्या कर रहा हूँ ले जा रहा हूँ सूची की शुरुआत में दिया, 893 00:38:47,691 --> 00:38:49,460 और मैं सॉर्ट करने के लिए जा रहा हूँ कि फिर वहाँ. 894 00:38:49,460 --> 00:38:50,140 तो यहाँ हम कर रहे हैं. 895 00:38:50,140 --> 00:38:51,030 नंबर 4. 896 00:38:51,030 --> 00:38:53,680 मैं नंबर डालने के लिए जा रहा हूँ एक क्रमबद्ध सूची में 4. 897 00:38:53,680 --> 00:38:54,180 डन. 898 00:38:54,180 --> 00:38:58,300 मैं अब दावा है, और अभी यह और अधिक बनाने के लिए स्पष्ट, मेरी सूची के इस भाग को हल है. 899 00:38:58,300 --> 00:39:02,610 यह एक बेवकूफ दावे की तरह है, लेकिन वास्तव में 4 आकार एक की एक सूची में सॉर्ट किया जाता है. 900 00:39:02,610 --> 00:39:04,210 अब, मैं नंबर 2 पर ले जा रहा हूँ. 901 00:39:04,210 --> 00:39:07,670 नंबर 2 अब मैं जा रहा हूँ सही जगह में डालें. 902 00:39:07,670 --> 00:39:08,680 इसलिए जहां 2 हैं करता है? 903 00:39:08,680 --> 00:39:09,824 जाहिर है, यहाँ पर. 904 00:39:09,824 --> 00:39:11,490 तो आगे चलते हैं और अगर तुम सकता है, वापस चलते हैं. 905 00:39:11,490 --> 00:39:14,406 और क्यों नहीं तुम लोग बस लेते हैं अपने संगीत आप के साथ इस समय खड़ा है. 906 00:39:14,406 --> 00:39:17,020 और जबरन चलो तुम डालें सूची की शुरुआत में. 907 00:39:17,020 --> 00:39:17,936 तो एक छोटे से अधिक काम करते हैं. 908 00:39:17,936 --> 00:39:20,890 मैं, चारों ओर याकूब कदम था और तुम्हारा नाम क्या है? 909 00:39:20,890 --> 00:39:21,420 >> अमीन: अमीन. 910 00:39:21,420 --> 00:39:22,270 >> डेविड Malan: अमीन. 911 00:39:22,270 --> 00:39:24,350 लेकिन कम से कम मैं आगे और पीछे जाने नहीं दिया. 912 00:39:24,350 --> 00:39:25,739 मैं जाने के रूप में मैं सिर्फ बातें ले जा रहा हूँ. 913 00:39:25,739 --> 00:39:27,530 मैं सिर्फ उन्हें डालने हूँ सही जगह में. 914 00:39:27,530 --> 00:39:29,220 6, यह वास्तव में बहुत आसान है. 915 00:39:29,220 --> 00:39:31,510 आप अगर है, वहाँ पर आप सम्मिलित करते हैं बस थोड़ा स्थानांतरित करने के लिए चाहता था. 916 00:39:31,510 --> 00:39:32,870 नंबर 8, भी बहुत आसान. 917 00:39:32,870 --> 00:39:33,741 वहीं पर खत्म हो गया. 918 00:39:33,741 --> 00:39:34,240 लानत है. 919 00:39:34,240 --> 00:39:37,590 नंबर 1 हम नहीं कर सकते बस यहाँ अमीन के साथ स्वैप, 920 00:39:37,590 --> 00:39:39,340 कि क्योंकि जा रहा है गंदगी को आदेश करने के लिए. 921 00:39:39,340 --> 00:39:40,660 इसलिए हम एक छोटे से अधिक चालाक होना है. 922 00:39:40,660 --> 00:39:42,770 तो, आर्टी, अगर तुम सकता है एक पल के लिए वापस. 923 00:39:42,770 --> 00:39:46,550 , चलो आगे जाना है और अब बदलाव करते हैं हमारे पिछले एल्गोरिदम के विपरीत, 924 00:39:46,550 --> 00:39:50,910 आर्टी के लिए जगह बनाने के लिए यहीं शुरुआत में. 925 00:39:50,910 --> 00:39:54,690 दिन के अंत में तो, मैं एक तरह से कर रहा हूँ मैं पहले से बचना चाहता था क्या कर रही. 926 00:39:54,690 --> 00:39:57,770 और इसलिए मेरे एल्गोरिथ्म प्रकार है की, बौद्धिक, उलट 927 00:39:57,770 --> 00:39:59,070 यह मूल रूप से क्या था से. 928 00:39:59,070 --> 00:40:01,240 मैं सिर्फ स्थानांतरण कर रहा हूँ एक अलग बिंदु पर. 929 00:40:01,240 --> 00:40:02,291 अब मैं 3 में हूँ. 930 00:40:02,291 --> 00:40:02,790 अरे नहीं, ओह. 931 00:40:02,790 --> 00:40:04,039 हम फिर से अधिक काम करना है. 932 00:40:04,039 --> 00:40:05,060 तो चलो तुम बाहर धक्का. 933 00:40:05,060 --> 00:40:09,360 चलो 8, 6, 4-- oh-- ओह और 3 अभी भी वहीं जाना जा रहा है. 934 00:40:09,360 --> 00:40:11,490 इस समय कम से कम मामूली बचत पर तो. 935 00:40:11,490 --> 00:40:13,100 7, नहीं भी बहुत काम किया जाना बाकी है. 936 00:40:13,100 --> 00:40:15,370 आप पॉप करना चाहते हैं तो पीठ, की आप सम्मिलित करते हैं. 937 00:40:15,370 --> 00:40:17,440 और अंत में, 5, तुम अगर वापस पॉप करना चाहते हैं, हम 938 00:40:17,440 --> 00:40:22,610 , आप शिफ्ट करने के लिए आप की जरूरत है, पांच, जब तक आप जगह में है. 939 00:40:22,610 --> 00:40:25,670 >> तो अब एक पर यह देखने के लिए रेखांकन उच्च स्तर, 940 00:40:25,670 --> 00:40:31,080 इस एल्गोरिथ्म करते हैं दृश्य एक अतिरिक्त समय. 941 00:40:31,080 --> 00:40:33,580 तो यह है कि हम प्रविष्टि क्रमबद्ध फोन करेगा. 942 00:40:33,580 --> 00:40:37,700 हम बस के रूप में यह चलने देंगे तेजी से, और इसे यहाँ शुरू. 943 00:40:37,700 --> 00:40:39,580 और यह भी एक अलग अनुभव होता है. 944 00:40:39,580 --> 00:40:42,180 यह एक तरह से बेहतर हो रही है और बेहतर है, लेकिन यह सही नहीं है 945 00:40:42,180 --> 00:40:44,630 मैं उन अंतराल में में और चिकनी जाने तक. 946 00:40:44,630 --> 00:40:47,860 क्योंकि, फिर से, मैं केवल ले जा रहा हूँ क्या मैं बाएं से दाएं को दिया जा रहा है. 947 00:40:47,860 --> 00:40:50,350 तो मैं इतना भाग्यशाली नहीं मिला कि सब कुछ सही था. 948 00:40:50,350 --> 00:40:54,190 हम इन छोटी थी यही कारण है कि हम समय के साथ तय हो गई है कि mispositions. 949 00:40:54,190 --> 00:40:58,890 >> तो इन एल्गोरिदम के सभी के लिए लग रहे थोड़ा अलग ज्ञान प्राप्त किया पर चलाते हैं. 950 00:40:58,890 --> 00:41:02,030 वास्तव में, जो आप कहेंगे सबसे अच्छा है या अब तक सबसे तेजी से? 951 00:41:02,030 --> 00:41:03,450 बुलबुला तरह, पहले? 952 00:41:03,450 --> 00:41:05,000 चुनाव में क्रमबद्ध, दूसरा? 953 00:41:05,000 --> 00:41:08,450 सम्मिलन सॉर्ट, तृतीय? 954 00:41:08,450 --> 00:41:10,710 मैं कुछ चयन प्रकार सुनते हैं. 955 00:41:10,710 --> 00:41:13,280 अन्य विचार? 956 00:41:13,280 --> 00:41:16,880 >> तो यह पता चला है कि इन एल्गोरिदम के सभी 957 00:41:16,880 --> 00:41:22,400 के रूप में मौलिक रूप से बस के रूप में कुशल हैं बस के रूप में, इसके विपरीत, प्रत्येक other-- या 958 00:41:22,400 --> 00:41:25,980 एक दूसरे के रूप में अकुशल, हम मौलिक कर सकते हैं क्योंकि 959 00:41:25,980 --> 00:41:28,120 सभी तीन से बेहतर इन एल्गोरिदम की. 960 00:41:28,120 --> 00:41:29,990 और कहा कि एक सफेद झूठ का एक सा है, भी है. 961 00:41:29,990 --> 00:41:32,580 मैं के रूप में कुशल का कहना है जब या अक्षम के रूप में, 962 00:41:32,580 --> 00:41:35,040 कि कम से कम के लिए है n के सुपर बड़े मूल्यों. 963 00:41:35,040 --> 00:41:38,450 हम यहां सिर्फ आठ लोगों को है, या शायद स्क्रीन पर 50 या तो सलाखों, 964 00:41:38,450 --> 00:41:41,645 आप बिल्कुल अंतर देखने को मिलेंगे इन तीन एल्गोरिदम के बीच. 965 00:41:41,645 --> 00:41:44,020 लेकिन एन के रूप में, लोगों की संख्या या संख्या की संख्या, 966 00:41:44,020 --> 00:41:46,350 या फोन में लोगों की संख्या पुस्तक, या वेब पृष्ठों की संख्या 967 00:41:46,350 --> 00:41:48,230 गूगल के डाटाबेस में बड़ा और बड़ा हो जाता है 968 00:41:48,230 --> 00:41:51,650 हम देखेंगे कि इन तीनों को एल्गोरिदम वास्तव में बहुत गरीब हैं. 969 00:41:51,650 --> 00:41:54,060 और हम मौलिक कर सकते हैं उस से भी बेहतर. 970 00:41:54,060 --> 00:41:56,830 >> , के अंत में, एक नज़र रखना क्या इन एल्गोरिदम हो सकता है पर 971 00:41:56,830 --> 00:41:59,520 में ध्वनि की तरह कुछ अन्य लोगों के संदर्भ 972 00:41:59,520 --> 00:42:03,550 के रूप में अच्छी तरह से इस के माध्यम से यहाँ दृश्य 973 00:42:03,550 --> 00:42:06,860 उस के लिए हमें शुरू होगा एल्गोरिदम के एक नंबर. 974 00:42:06,860 --> 00:42:10,330 आगे जाने के लिए और बधाई देता हूं जिनमें से सभी यहाँ हमारे प्रतिभागियों, 975 00:42:10,330 --> 00:42:11,690 बहुत अच्छी तरह से खुद को हल. 976 00:42:11,690 --> 00:42:15,124 आप एक बिदाई उपहार लेने के लिए करना चाहते हैं. 977 00:42:15,124 --> 00:42:16,540 आप के रूप में अच्छी तरह से अपनी संख्या में रख सकते हैं. 978 00:42:16,540 --> 00:42:19,460 979 00:42:19,460 --> 00:42:22,520 और आप देखेंगे क्या, या यों कहें, अब सुना है, 980 00:42:22,520 --> 00:42:25,710 है कि हम आवाज़ डाल के रूप में इन सलाखों से प्रत्येक के लिए 981 00:42:25,710 --> 00:42:28,660 और, सॉफ्टवेयर के साथ सहयोगी ध्वनि की अलग आवृत्ति, 982 00:42:28,660 --> 00:42:33,970 आप अपने मन अधिक audioly लपेट कर सकते हैं इन बातों का क्या प्रत्येक के आसपास 983 00:42:33,970 --> 00:42:34,470 हमशक्ल. 984 00:42:34,470 --> 00:42:39,325 जिनमें से प्रथम सम्मिलन तरह है 985 00:42:39,325 --> 00:42:44,275 >> [टन] 986 00:42:44,275 --> 00:42:47,245 987 00:42:47,245 --> 00:42:49,720 >> यह बुलबुला तरह है. 988 00:42:49,720 --> 00:42:54,175 >> [टन] 989 00:42:54,175 --> 00:43:17,250 990 00:43:17,250 --> 00:43:18,222 >> चुनाव तरह. 991 00:43:18,222 --> 00:43:22,596 >> [टन] 992 00:43:22,596 --> 00:43:33,570 993 00:43:33,570 --> 00:43:35,150 >> मर्ज क्रमबद्ध कुछ कहा. 994 00:43:35,150 --> 00:43:38,140 >> [टन] 995 00:43:38,140 --> 00:43:49,510 996 00:43:49,510 --> 00:43:51,278 >> सूक्ति तरह. 997 00:43:51,278 --> 00:43:56,390 >> [टन] 998 00:43:56,390 --> 00:44:08,240 999 00:44:08,240 --> 00:44:09,430 >> यही CS50 के लिए है. 1000 00:44:09,430 --> 00:44:13,360 हम बुधवार को देखेंगे. 1001 00:44:13,360 --> 00:44:16,671 >> अनाउन्सार: और अब, "दीप Daven Farnham द्वारा विचार, ". 1002 00:44:16,671 --> 00:44:19,910 1003 00:44:19,910 --> 00:44:21,590 क्यों यह एक पाश के लिए है? 1004 00:44:21,590 --> 00:44:23,200 क्यों नहीं इसे बेहतर बनाने? 1005 00:44:23,200 --> 00:44:25,970 मैं एक पांच पाश बनाना चाहते हैं. 1006 00:44:25,970 --> 00:44:28,720 >> [हंसी]