দ্বিতীয় কোড কাটা করার সময় (যা আপনাকে বাইনারি অনুসন্ধানের অ্যালগরিদমটি পাঁচবার প্রয়োগ করতে বলেছে, প্রতিবার একটি ভিন্ন পদ্ধতি দিয়ে), আমি কিছুটা ভিন্ন সমাধান নিয়ে এসেছি যা নীচের মত কাজ করে:
আমার যদি দৈর্ঘ্য 100 এর সাজানো অ্যারে থাকে এবং আমি দেখতে পাচ্ছি যে এর শুরু ক্ষেত্রটি 200 নম্বর এবং এর সমাপ্ত ক্ষেত্রটি 400 নম্বর ধারণ করে, আমি, একজন গণিত হিসাবে মানুষ অধ্যয়নরত, আমি 35 টি ক্ষেত্রের আশেপাশে অনুসন্ধান শুরু করতে পারি যদি আমি অনুসন্ধান করছিলাম 270 সংখ্যা, এবং 50 টি সাধারণ বাইনারি অনুসন্ধান অ্যালগরিদমের মতো নয়।
তারপরে, অ্যারের 35 ক্ষেত্রের সংখ্যা 270 হয়, 35 হ'ল আমি যে সূচকটি অনুসন্ধান করছিলাম is
যদি তা না হয় তবে আমি যে নম্বর পেয়েছি তার সাথে তুলনা করতে পারি (বলুন 280) এবং অ্যারের নীচের অংশটি নিয়ে ক্রিয়াকলাপটি পুনরাবৃত্তি করতে পারে (সুতরাং আমার 200 ক্ষেত্রের শুরুর ক্ষেত্র এবং 350 সমাপ্ত ক্ষেত্র সহ 35 ক্ষেত্র রয়েছে) যদি আমি যে সংখ্যাটি পেয়েছি তার চেয়ে বড় যা আমি অনুসন্ধান করছি, বা অ্যারের উপরের অংশটি চেয়ে বড় (বলুন যে আমি 260 পেয়েছি: এখন আমার 65 সূচক রয়েছে, প্রথমটি 260 এবং চূড়ান্তটি 400 রয়েছে যা মূলত, আমি টর্ওয়ারের দিকে যেতে চাই) এই সাব অ্যারের সূচি 4, যা পুরো অ্যারের সূচক 39) যদি আমি পেয়েছি সংখ্যাটি আমি যে সংখ্যার সন্ধান করছি তার চেয়ে কম হয়।
প্রশ্নটি হল: এই অ্যালগরিদমকে বাইনারি অনুসন্ধানের অ্যালগরিদম হিসাবে বিবেচনা করা যেতে পারে? যদি না হয়, এটির নিজের নাম আছে?