আমি কেবল পড়েছি এই অ্যালগরিদমটিকে এখনও বাইনারি অনুসন্ধানের অ্যালগরিদম হিসাবে বিবেচনা করা যেতে পারে? এবং স্মরণ করিয়ে দিয়েছিলাম যে কয়েক বছর আগে আমি তারিখ / সময় উইন্ডোর দ্বারা বড় সরল পাঠ্য ফাইলগুলিতে লগ এন্ট্রিগুলি সন্ধান করার জন্য লগ ফাইলগুলির জন্য একটি সূচক / অনুসন্ধান লিখেছিলাম।
এই কাজটি করার সময় আমি সিদ্ধান্ত নিয়েছি যে অন্তরঙ্গকরণ অনুসন্ধান করার চেষ্টা করব (আমি জানতাম না এটি কী বলা হয়েছিল, আমি নিজেই ধারণাটি পেরেছি)। তারপরে কোন কারণে আমি বাইনারি বিভক্ত পদক্ষেপের সাথে ইন্টারপোলেশন পদক্ষেপগুলি পরিবর্তনের ধারণাটি অব্যাহত রেখেছিলাম: পদক্ষেপ 0 এ আমি পরীক্ষার পয়েন্টটি স্থির করতে বিরক্ত করব, তারপরে 1 ধাপে আমি সঠিক মিডপয়েন্ট ইত্যাদি গ্রহণ করব etc.
আমি তখন খাঁটি ইন্টারপোলেশন অনুসন্ধান, খাঁটি বাইনারি অনুসন্ধান এবং আমার সংমিশ্রণ প্রচেষ্টা ব্যবহার করে সিস্টেমটিকে বেঞ্চমার্ক করেছি। বিকল্প পদ্ধতিটি এলোমেলোভাবে বেছে নেওয়া সময়ের একটি সেট খুঁজে পাওয়ার আগে সময় এবং পরীক্ষার জন্য উভয় ক্ষেত্রেই একটি স্পষ্ট বিজয়ী ছিল।
সংযুক্ত প্রশ্নের দ্বারা অনুপ্রাণিত হয়ে, আমি কেবল "বিকল্প ইন্টারপোলেশন অনুসন্ধান এবং বাইনারি অনুসন্ধান" অনুসন্ধান করেছি এবং কিছুই পাই নি। আমি উত্তরগুলির একটিতে আমার মন্তব্যে প্রস্তাবিত হিসাবে আমি "হেজড ইন্টারপোলেশন অনুসন্ধান" চেষ্টা করেছিলাম।
আমি কি কোনও পরিচিত জিনিস পেরিয়ে হোঁচট খেয়েছি? এটি নির্দিষ্ট ধরণের ডেটার জন্য দ্রুত হওয়ার কোনও তাত্ত্বিক সমর্থনযোগ্যতা কি আছে? লগ ফাইলগুলি সাধারণত সময়ের জন্য বড় ছিল (উদাহরণস্বরূপ, অনুসন্ধানের জন্য 10 মিলিয়ন সারি সহ 1-2 গিগাবাইট পাঠ্য) এবং এগুলিতে খেজুর / সময়গুলির বিস্তার ভারী ক্রিয়াকলাপ, সাধারণ শিখার সময় এবং শান্ত সময়ের সাথে জটিল ছিল। আমার বেঞ্চমার্ক পরীক্ষাগুলি সন্ধানের জন্য লক্ষ্য সময়ের একটি এমনকি বিতরণ থেকে নমুনাযুক্ত।