1 00:00:00,000 --> 00:00:03,346 >> [संगीत बजाना] 2 00:00:03,346 --> 00:00:05,258 3 00:00:05,258 --> 00:00:06,220 >> डौग लॉयड: ठीक है। 4 00:00:06,220 --> 00:00:08,140 तो द्विआधारी खोज एक है हम उपयोग कर सकते हैं एल्गोरिथ्म 5 00:00:08,140 --> 00:00:10,530 एक सरणी के अंदर एक तत्व खोजने के लिए। 6 00:00:10,530 --> 00:00:14,710 रैखिक खोज के विपरीत, यह आवश्यकता है एक विशेष हालत पहले से मुलाकात हो 7 00:00:14,710 --> 00:00:19,020 लेकिन यह इतना अधिक कुशल यदि है हालत यह है कि, वास्तव में, से मुलाकात की। 8 00:00:19,020 --> 00:00:20,470 >> तो विचार यहाँ क्या हो रहा है? 9 00:00:20,470 --> 00:00:21,780 यह फूट डालो और राज है। 10 00:00:21,780 --> 00:00:25,100 हम के आकार को कम करना चाहते हैं आधा हर बार से खोज क्षेत्र 11 00:00:25,100 --> 00:00:27,240 लक्ष्य नंबर खोजने के लिए। 12 00:00:27,240 --> 00:00:29,520 यह है कि जहां हालत है हालांकि, खेलने में आता है। 13 00:00:29,520 --> 00:00:32,740 हम केवल की शक्ति का लाभ उठाने कर सकते हैं तत्वों के नष्ट आधा 14 00:00:32,740 --> 00:00:36,070 भी देख के बिना उन्हें सरणी हल है यदि। 15 00:00:36,070 --> 00:00:39,200 >> यह एक पूर्ण मिश्रण है, हम सिर्फ हाथ से बाहर नहीं कर सकते 16 00:00:39,200 --> 00:00:42,870 क्योंकि, तत्वों के आधे त्यागने हम discarding रहे हैं पता नहीं है। 17 00:00:42,870 --> 00:00:45,624 लेकिन सरणी, हल किया जाता है तो हम ऐसा कर सकते हैं क्योंकि हम 18 00:00:45,624 --> 00:00:48,040 करने के लिए है कि सब कुछ जानते हैं हम वर्तमान में कर रहे हैं, जहां से छोड़ा 19 00:00:48,040 --> 00:00:50,500 से कम होना चाहिए मूल्य हम वर्तमान में कर रहे हैं। 20 00:00:50,500 --> 00:00:52,300 और सब कुछ करने के लिए हम कर रहे हैं, जहां का अधिकार 21 00:00:52,300 --> 00:00:55,040 मूल्य से अधिक होना चाहिए वर्तमान में हम देख रहे हैं। 22 00:00:55,040 --> 00:00:58,710 >> तो स्यूडोकोड क्या है द्विआधारी खोज के लिए कदम? 23 00:00:58,710 --> 00:01:02,310 हम जब तक इस प्रक्रिया को दोहराने सरणी या, हम के माध्यम से आगे बढ़ना के रूप में, 24 00:01:02,310 --> 00:01:07,740 उप सरणियों, के छोटे टुकड़े मूल सरणी, आकार 0 से है। 25 00:01:07,740 --> 00:01:10,960 मध्यबिंदु की गणना वर्तमान उप सरणी की। 26 00:01:10,960 --> 00:01:14,460 >> आप के लिए देख रहे हैं मान है, तो सरणी के उस तत्व में, बंद करो। 27 00:01:14,460 --> 00:01:15,030 आपने इसे पा लिया। 28 00:01:15,030 --> 00:01:16,550 यह बहुत अच्छा है। 29 00:01:16,550 --> 00:01:19,610 अन्यथा, लक्ष्य है, तो बीच में क्या कम से कम 30 00:01:19,610 --> 00:01:23,430 इसलिए महत्व देते हैं हम देख रहे हैं के लिए, जो हम देखते हैं की तुलना में कम है 31 00:01:23,430 --> 00:01:26,780 फिर इस प्रक्रिया को दोहराने, लेकिन इसके बजाय, अंत बिंदु को बदल 32 00:01:26,780 --> 00:01:29,300 मूल होने का पूरी सरणी पूरा, 33 00:01:29,300 --> 00:01:34,110 सिर्फ बाईं ओर होना करने के लिए जहां से हम सिर्फ देखा। 34 00:01:34,110 --> 00:01:38,940 >> हम बीच बहुत अधिक थी कि पता था या लक्ष्य, मध्य से कम नहीं था 35 00:01:38,940 --> 00:01:42,210 और इसलिए यह मौजूद होना चाहिए अगर यह सब पर है, सरणी में मौजूद है 36 00:01:42,210 --> 00:01:44,660 कहीं मध्यबिंदु के बाईं ओर। 37 00:01:44,660 --> 00:01:48,120 और इसलिए हम सरणी स्थापित करेंगे सिर्फ बाईं ओर स्थान 38 00:01:48,120 --> 00:01:51,145 नई अंत बिंदु के रूप में मध्य के। 39 00:01:51,145 --> 00:01:53,770 इसके विपरीत, लक्ष्य है, तो बीच में क्या से अधिक से अधिक, 40 00:01:53,770 --> 00:01:55,750 हम उसी करना प्रक्रिया है, लेकिन इसके बजाय हम 41 00:01:55,750 --> 00:01:59,520 होना करने के लिए प्रारंभ बिंदु बदल सिर्फ मध्यबिंदु के अधिकार के लिए 42 00:01:59,520 --> 00:02:00,680 हम सिर्फ गणना की थी। 43 00:02:00,680 --> 00:02:03,220 और फिर, हम प्रक्रिया को फिर से शुरू करते हैं। 44 00:02:03,220 --> 00:02:05,220 >> ठीक है, यह कल्पना करते हैं? 45 00:02:05,220 --> 00:02:08,620 तो जा रहा है और यहां पर एक बहुत कुछ है, लेकिन यहाँ 15 तत्वों की एक सरणी है। 46 00:02:08,620 --> 00:02:11,400 और हम ट्रैक रखने के होने जा रहे हैं एक बहुत अधिक सामान इस समय की। 47 00:02:11,400 --> 00:02:13,870 तो रैखिक खोज में, हम थे बस एक लक्ष्य के बारे में देखभाल। 48 00:02:13,870 --> 00:02:15,869 लेकिन इस बार हम करना चाहते हैं हम कर रहे हैं, जहां के बारे में परवाह 49 00:02:15,869 --> 00:02:18,480 देखने के लिए शुरू, जहां हम देख रोक रहे हैं, 50 00:02:18,480 --> 00:02:21,876 और मध्य क्या है वर्तमान सरणी की। 51 00:02:21,876 --> 00:02:23,250 यहाँ तो हम द्विआधारी खोज के साथ चलते हैं। 52 00:02:23,250 --> 00:02:25,290 हम बहुत ज्यादा अच्छा जाना, सही कह रहे हो? 53 00:02:25,290 --> 00:02:28,650 मैं सिर्फ नीचे डाल करने के लिए जा रहा हूँ सूचकांक का एक सेट यहाँ नीचे। 54 00:02:28,650 --> 00:02:32,430 यह मूल रूप से बस क्या तत्व है सरणी के बारे में हम बात कर रहे हैं। 55 00:02:32,430 --> 00:02:34,500 रैखिक खोज के साथ, हम हम यद्यपि के रूप में, परवाह 56 00:02:34,500 --> 00:02:36,800 कितने पता करने की जरूरत हम पर iterating रहे तत्वों, 57 00:02:36,800 --> 00:02:40,010 लेकिन हम वास्तव में परवाह नहीं है क्या तत्व हम वर्तमान में देख रहे हैं। 58 00:02:40,010 --> 00:02:41,014 द्विआधारी खोज में, हम करते हैं। 59 00:02:41,014 --> 00:02:42,930 और इसलिए उन बस रहे हैं वहाँ एक छोटे से गाइड के रूप में। 60 00:02:42,930 --> 00:02:44,910 >> इसलिए हम सही, शुरू कर सकते हैं? 61 00:02:44,910 --> 00:02:46,240 खैर, काफी नहीं है। 62 00:02:46,240 --> 00:02:48,160 मैंने क्या कहा याद रखें द्विआधारी खोज के बारे में? 63 00:02:48,160 --> 00:02:50,955 हम एक पर यह नहीं कर सकता बाकी अवर्गीकृत सरणी या, 64 00:02:50,955 --> 00:02:55,820 हम गारंटी है कि नहीं कर रहे हैं कुछ तत्वों या मान नहीं रहे 65 00:02:55,820 --> 00:02:57,650 गलती से किया जा रहा है त्याग जब हम बस 66 00:02:57,650 --> 00:02:59,920 सरणी में से आधे की अनदेखी करने का फैसला। 67 00:02:59,920 --> 00:03:02,574 >> तो द्विआधारी खोज के साथ एक कदम आप एक क्रमबद्ध सरणी होना आवश्यक है। 68 00:03:02,574 --> 00:03:05,240 और अगर आप छँटाई के किसी भी उपयोग कर सकते हैं हम के बारे में बात की है एल्गोरिदम 69 00:03:05,240 --> 00:03:06,700 स्थिति यह है कि आप प्राप्त करने के लिए। 70 00:03:06,700 --> 00:03:10,370 तो अब, हम एक स्थिति जहां में हैं हम द्विआधारी खोज प्रदर्शन कर सकते हैं। 71 00:03:10,370 --> 00:03:12,560 >> तो चलो इस प्रक्रिया को दोहराने दें कदम से कदम और रख 72 00:03:12,560 --> 00:03:14,830 हम जाने के रूप में क्या हो रहा है का ट्रैक। 73 00:03:14,830 --> 00:03:17,980 तो पहले हम की गणना करने की ज़रूरत है वर्तमान सरणी का मध्यबिंदु। 74 00:03:17,980 --> 00:03:20,620 खैर, हम सबसे पहले, हम कर रहे हैं कहूँगा सब के मूल्य 19 के लिए देख रहे हैं। 75 00:03:20,620 --> 00:03:22,290 हम संख्या 19 खोजने की कोशिश कर रहे हैं। 76 00:03:22,290 --> 00:03:25,380 इस के पहले तत्व सरणी, सूचकांक शून्य पर स्थित है 77 00:03:25,380 --> 00:03:28,880 और इस के अंतिम तत्व सरणी सूचकांक 14 पर स्थित है। 78 00:03:28,880 --> 00:03:31,430 और इसलिए हम उन के शुरू और अंत फोन करता हूँ। 79 00:03:31,430 --> 00:03:35,387 >> इसलिए हम मध्यबिंदु द्वारा गणना 0 प्लस 2 से विभाजित 14 जोड़ने; 80 00:03:35,387 --> 00:03:36,720 बहुत सीधा मध्यबिंदु। 81 00:03:36,720 --> 00:03:40,190 और हम कह सकते हैं कि मध्यबिंदु अब 7 है। 82 00:03:40,190 --> 00:03:43,370 तो 15 के लिए हम देख रहे हैं क्या है? 83 00:03:43,370 --> 00:03:43,940 नहीं यह नहीं। 84 00:03:43,940 --> 00:03:45,270 हम 19 के लिए देख रहे हैं। 85 00:03:45,270 --> 00:03:49,400 लेकिन हम 19 से अधिक है कि पता हम बीच में क्या मिला है। 86 00:03:49,400 --> 00:03:52,470 >> तो हम क्या कर सकते हैं प्रारंभ बिंदु बदल 87 00:03:52,470 --> 00:03:57,280 बस के अधिकार के लिए किया जाना है मध्य, और फिर इस प्रक्रिया को दोहराने। 88 00:03:57,280 --> 00:04:01,690 हम ऐसा है, हम अब कहते हैं नई शुरुआत बिंदु सरणी स्थान 8 है। 89 00:04:01,690 --> 00:04:07,220 क्या हम प्रभावी ढंग से किया है है 15 के बाईं ओर नजरअंदाज कर दिया सब कुछ। 90 00:04:07,220 --> 00:04:09,570 हम आधे समाप्त कर दिया है समस्या की, और अब, 91 00:04:09,570 --> 00:04:13,510 बजाय खोज के लिए होने का हमारे सरणी में 15 से अधिक तत्वों, 92 00:04:13,510 --> 00:04:15,610 हम केवल 7 पर खोज करने के लिए है। 93 00:04:15,610 --> 00:04:17,706 तो 8 नए प्रारंभ बिंदु है। 94 00:04:17,706 --> 00:04:19,600 14 अभी भी अंत बिंदु है। 95 00:04:19,600 --> 00:04:21,430 >> और अब, हम फिर से इस पर चलते हैं। 96 00:04:21,430 --> 00:04:22,810 हम नए मध्यबिंदु गणना। 97 00:04:22,810 --> 00:04:27,130 8 प्लस 14 2 11 से विभाजित, 22 है। 98 00:04:27,130 --> 00:04:28,660 इस के लिए हम देख रहे हैं क्या है? 99 00:04:28,660 --> 00:04:30,110 नहीं यह नहीं। 100 00:04:30,110 --> 00:04:32,930 हम है कि एक मूल्य के लिए देख रहे हैं हम तो बस क्या पाया की तुलना में कम है। 101 00:04:32,930 --> 00:04:34,721 इसलिए हम दोहराने के लिए जा रहे हैं फिर से प्रक्रिया। 102 00:04:34,721 --> 00:04:38,280 हम करने के लिए अंत बिंदु को बदलने के लिए जा रहे हैं सिर्फ मध्यबिंदु के बाईं ओर हो। 103 00:04:38,280 --> 00:04:41,800 इसलिए नए अंत बिंदु 10 हो जाता है। 104 00:04:41,800 --> 00:04:44,780 और अब, इस बात का ही हिस्सा है सरणी के माध्यम से हम हल करना होगा। 105 00:04:44,780 --> 00:04:48,460 तो क्या अब हम समाप्त कर दिया है 15 तत्वों की 12। 106 00:04:48,460 --> 00:04:51,550 हम जानते हैं कि 19 कि अगर सरणी में मौजूद है, यह 107 00:04:51,550 --> 00:04:57,210 तत्व के बीच कहीं न कहीं मौजूद होना चाहिए नंबर 8 और तत्व नंबर 10। 108 00:04:57,210 --> 00:04:59,400 >> तो हम फिर से नया मध्यबिंदु गणना। 109 00:04:59,400 --> 00:05:02,900 8 प्लस 10 2 9 से विभाजित, 18 है। 110 00:05:02,900 --> 00:05:05,074 और इस मामले में, देखो, लक्ष्य मध्य में है। 111 00:05:05,074 --> 00:05:06,740 हम देख रहे हैं कि वास्तव में क्या पाया। 112 00:05:06,740 --> 00:05:07,780 रुक सकते हैं। 113 00:05:07,780 --> 00:05:10,561 हम सफलतापूर्वक पूरा एक द्विआधारी खोज। 114 00:05:10,561 --> 00:05:11,060 ठीक है। 115 00:05:11,060 --> 00:05:13,930 इसलिए हम इस एल्गोरिथ्म जानते लक्ष्य है कि अगर काम करता है 116 00:05:13,930 --> 00:05:16,070 कहीं सरणी के अंदर। 117 00:05:16,070 --> 00:05:19,060 इस एल्गोरिथ्म काम करता है, तो करता है लक्ष्य सरणी में नहीं है? 118 00:05:19,060 --> 00:05:20,810 ठीक है, चलो यह शुरू करते हैं फिर, और इस बार, 119 00:05:20,810 --> 00:05:23,380 के तत्व के लिए देखो नेत्रहीन हम देख सकते हैं, जो 16, 120 00:05:23,380 --> 00:05:25,620 सरणी में कहीं भी मौजूद नहीं है। 121 00:05:25,620 --> 00:05:27,110 >> प्रारंभ बिंदु फिर 0 है। 122 00:05:27,110 --> 00:05:28,590 अंत बिंदु फिर से 14 है। 123 00:05:28,590 --> 00:05:32,490 उन पहले के सूचकांक हैं और पूरा सरणी के अंतिम तत्वों। 124 00:05:32,490 --> 00:05:36,057 और हम इस प्रक्रिया में हम सिर्फ माध्यम से जाना होगा के माध्यम से चला गया, फिर से, 16 खोजने की कोशिश कर, 125 00:05:36,057 --> 00:05:39,140 यहां तक ​​कि नेत्रहीन हालांकि, हम पहले से ही कर सकते हैं यह वहाँ नहीं होने जा रहा है कि बताओ। 126 00:05:39,140 --> 00:05:43,450 हम सिर्फ यकीन है कि इस एल्गोरिथ्म बनाना चाहते वास्तव में, अभी भी किसी तरह से काम करेगा 127 00:05:43,450 --> 00:05:46,310 और सिर्फ हमें छोड़ कर नहीं एक अनंत लूप में अटक गया। 128 00:05:46,310 --> 00:05:48,190 >> तो कदम पहले क्या है? 129 00:05:48,190 --> 00:05:50,230 मध्यबिंदु की गणना वर्तमान सरणी की। 130 00:05:50,230 --> 00:05:52,790 मध्यबिंदु क्या है वर्तमान सरणी की? 131 00:05:52,790 --> 00:05:54,410 खैर, यह सही है, 7 है? 132 00:05:54,410 --> 00:05:57,560 2 से विभाजित 14 प्लस 0 7 है। 133 00:05:57,560 --> 00:05:59,280 हम क्या देख रहे हैं 15 है? 134 00:05:59,280 --> 00:05:59,780 नहीं। 135 00:05:59,780 --> 00:06:02,930 यह बहुत करीब है, लेकिन हम देख रहे हैं कि तुलना में थोड़ा बड़ा एक मूल्य के लिए। 136 00:06:02,930 --> 00:06:06,310 >> इसलिए हम यह करने के लिए जा रहा है कि पता है 15 के बाईं ओर कहीं नहीं हो। 137 00:06:06,310 --> 00:06:08,540 लक्ष्य से अधिक है क्या मध्य में है। 138 00:06:08,540 --> 00:06:12,450 और इसलिए हम नई शुरुआत बिंदु करने के लिए सेट सिर्फ बीच की सही करने के लिए किया जाना है। 139 00:06:12,450 --> 00:06:16,130 मध्यबिंदु तो, वर्तमान में 7 की नई शुरुआत बिंदु 8 कहते हैं। 140 00:06:16,130 --> 00:06:18,130 और हम प्रभावी रूप से क्या है फिर से किया नजरअंदाज कर दिया है 141 00:06:18,130 --> 00:06:21,150 सरणी के पूरे बाईं आधा। 142 00:06:21,150 --> 00:06:23,750 >> अब, हम दोहराने एक और बार की प्रक्रिया। 143 00:06:23,750 --> 00:06:24,910 नई मध्यबिंदु गणना। 144 00:06:24,910 --> 00:06:29,350 8 प्लस 14 2 11 से विभाजित, 22 है। 145 00:06:29,350 --> 00:06:31,060 हम क्या देख रहे हैं 23 है? 146 00:06:31,060 --> 00:06:31,870 दुर्भाग्यवश नहीं। 147 00:06:31,870 --> 00:06:34,930 हम एक मूल्य के लिए देख रहे हैं कि कम से कम 23 है। 148 00:06:34,930 --> 00:06:37,850 और हां, इस मामले में हम जा रहे हैं अंत बिंदु को बदलने के लिए बस हो 149 00:06:37,850 --> 00:06:40,035 वर्तमान मध्यबिंदु के बाईं ओर। 150 00:06:40,035 --> 00:06:43,440 वर्तमान मध्यबिंदु 11 है, और इसलिए हम नई अंत बिंदु निर्धारित करेंगे 151 00:06:43,440 --> 00:06:46,980 हम अगली बार के लिए 10 के लिए इस प्रक्रिया के माध्यम से। 152 00:06:46,980 --> 00:06:48,660 >> फिर, हम फिर से इस प्रक्रिया के माध्यम से जाना। 153 00:06:48,660 --> 00:06:49,640 मध्यबिंदु गणना। 154 00:06:49,640 --> 00:06:53,100 2 से विभाजित 8 प्लस 10 9 है। 155 00:06:53,100 --> 00:06:54,750 हम क्या देख रहे हैं 19 है? 156 00:06:54,750 --> 00:06:55,500 दुर्भाग्यवश नहीं। 157 00:06:55,500 --> 00:06:58,050 हम अभी भी देख रहे हैं कि कम से कम एक नंबर। 158 00:06:58,050 --> 00:07:02,060 इसलिए हम अंत बिंदु इस समय बदल देंगे सिर्फ मध्यबिंदु के बाईं ओर हो। 159 00:07:02,060 --> 00:07:05,532 मध्य, वर्तमान में 9 है तो अंत बिंदु 8 हो जाएगा। 160 00:07:05,532 --> 00:07:07,920 और अब, हम अभी देख रहे हैं एक ही तत्व सरणी में। 161 00:07:07,920 --> 00:07:10,250 >> इस सरणी के मध्य बिंदु क्या है? 162 00:07:10,250 --> 00:07:13,459 खैर, यह, 8 में शुरू होता है 8 पर समाप्त होता है, मध्यबिंदु 8 है। 163 00:07:13,459 --> 00:07:14,750 कि हम के लिए क्या देख रहे हैं? 164 00:07:14,750 --> 00:07:16,339 हम 17 के लिए देख रहे हैं? 165 00:07:16,339 --> 00:07:17,380 नहीं, हम 16 के लिए देख रहे हैं। 166 00:07:17,380 --> 00:07:20,160 यह सरणी में मौजूद है तो, यह कहीं न कहीं मौजूद होना चाहिए 167 00:07:20,160 --> 00:07:21,935 हम वर्तमान में कर रहे हैं, जहां के बाईं ओर। 168 00:07:21,935 --> 00:07:23,060 तो हम क्या करने जा रहे हैं? 169 00:07:23,060 --> 00:07:26,610 खैर, हम तो बस होने के लिए अंत बिंदु निर्धारित करेंगे वर्तमान मध्यबिंदु के बाईं ओर। 170 00:07:26,610 --> 00:07:29,055 इसलिए हम 7 के लिए अंत बिंदु बदल देंगे। 171 00:07:29,055 --> 00:07:32,120 आप बस क्या देख रहे हो हालांकि, यहाँ क्या हुआ? 172 00:07:32,120 --> 00:07:33,370 अब यहाँ देखो। 173 00:07:33,370 --> 00:07:35,970 >> प्रारंभ अब अंत की तुलना में अधिक है। 174 00:07:35,970 --> 00:07:39,620 प्रभावी ढंग से, दो सिरों हमारे सरणी के पार कर दी है, 175 00:07:39,620 --> 00:07:42,252 और शुरू बिंदु है अब अंत बिंदु के बाद। 176 00:07:42,252 --> 00:07:43,960 वैसे, यह नहीं करता है ठीक है, कोई मतलब? 177 00:07:43,960 --> 00:07:47,960 तो अब, क्या हम कह सकते हैं कि हम है आकार 0 के एक उप सरणी है। 178 00:07:47,960 --> 00:07:50,110 और एक बार हम करने के लिए मिल रहे हैं इस बिंदु पर, हम अब कर सकते हैं 179 00:07:50,110 --> 00:07:53,940 उस तत्व की गारंटी 16 सरणी में मौजूद नहीं है, 180 00:07:53,940 --> 00:07:56,280 प्रारंभ बिंदु क्योंकि और अंत बिंदु पार कर दी है। 181 00:07:56,280 --> 00:07:58,340 और तो यह कुछ नहीं है। 182 00:07:58,340 --> 00:08:01,340 अब, यह थोड़ा है कि नोटिस शुरू बिंदु और अंत की तुलना में अलग 183 00:08:01,340 --> 00:08:02,900 एक ही बात की जा रही। 184 00:08:02,900 --> 00:08:05,030 हम देख रहा था, तो 17 के लिए, यह होता है 185 00:08:05,030 --> 00:08:08,870 सरणी, और शुरू बिंदु में किया गया कि अंतिम यात्रा की और अंत बिंदु 186 00:08:08,870 --> 00:08:11,820 उन बिंदुओं को पार करने से पहले, हम वहाँ 17 पाया होता। 187 00:08:11,820 --> 00:08:15,510 वे हम कर सकते हैं कि पार यह केवल जब तत्व नहीं है कि गारंटी 188 00:08:15,510 --> 00:08:17,180 सरणी में मौजूद हैं। 189 00:08:17,180 --> 00:08:20,260 >> तो चलो एक बहुत कम ले चलो रैखिक खोज से कदम। 190 00:08:20,260 --> 00:08:23,250 सबसे खराब स्थिति में, हम था n तत्वों की सूची में ऊपर विभाजित करने के लिए 191 00:08:23,250 --> 00:08:27,770 बार-बार छमाही में, लक्ष्य को खोजने के लिए क्योंकि या तो लक्ष्य तत्व 192 00:08:27,770 --> 00:08:33,110 पिछले में कहीं हो जाएगा विभाजन, या यह सब पर मौजूद नहीं है। 193 00:08:33,110 --> 00:08:37,830 सबसे खराब स्थिति में तो, हम करने के लिए है क्या तुम जानते हो array-- अलग है? 194 00:08:37,830 --> 00:08:40,510 N बार के प्रवेश; हम समस्या में कटौती की है 195 00:08:40,510 --> 00:08:42,610 आधा समय की एक निश्चित संख्या में। 196 00:08:42,610 --> 00:08:45,160 समय की यह संख्या लॉग n है। 197 00:08:45,160 --> 00:08:46,510 >> सबसे अच्छी स्थिति क्या है? 198 00:08:46,510 --> 00:08:48,899 खैर, पहली बार हम मध्यबिंदु की गणना, 199 00:08:48,899 --> 00:08:50,190 हम क्या देख रहे हो पाते हैं। 200 00:08:50,190 --> 00:08:52,150 पिछले सभी में द्विआधारी खोज पर उदाहरण 201 00:08:52,150 --> 00:08:55,489 हम था कि अगर हम सिर्फ पर चला गया है तत्व 15 के लिए तलाश कर दिया गया, 202 00:08:55,489 --> 00:08:57,030 हम चाहते हैं कि तुरंत पाया होता। 203 00:08:57,030 --> 00:08:58,321 यही कारण है कि बहुत शुरुआत में किया गया था। 204 00:08:58,321 --> 00:09:01,200 कि midpoint था एक विभाजन में पहला प्रयास 205 00:09:01,200 --> 00:09:03,950 द्विआधारी खोज में एक प्रभाग की। 206 00:09:03,950 --> 00:09:06,350 >> और तो सबसे खराब में मामले, द्विआधारी खोज चलाता है 207 00:09:06,350 --> 00:09:11,580 काफी बेहतर है, जो लॉग n में सबसे खराब स्थिति में रैखिक खोज, की तुलना में। 208 00:09:11,580 --> 00:09:16,210 सबसे अच्छा मामले में, द्विआधारी खोज 1 की ओमेगा में चलाता है। 209 00:09:16,210 --> 00:09:18,990 तो द्विआधारी खोज एक बहुत है रैखिक खोज की तुलना में बेहतर है, 210 00:09:18,990 --> 00:09:23,270 लेकिन आप की प्रक्रिया के साथ सौदा किया है आप कर सकते हैं इससे पहले पहली बार अपने सरणी छँटाई 211 00:09:23,270 --> 00:09:26,140 द्विआधारी खोज की शक्ति का लाभ उठाते हैं। 212 00:09:26,140 --> 00:09:27,130 >> मैं डौग लॉयड हूँ। 213 00:09:27,130 --> 00:09:29,470 इस सीएस 50 है। 214 00:09:29,470 --> 00:09:31,070