স্পষ্টতই, একটি প্রবর্তন অনুসন্ধান করার জন্য, আপনাকে কিছু প্রকারের কী প্রয়োজন যার জন্য অর্ডার করার চেয়ে বেশি জানা যায় - আপনাকে সম্ভাব্য দূরত্ব নির্ধারণের জন্য কীগুলিতে গণনা করতে সক্ষম হতে হবে, কেবল কোনটি আরও বড় বা এটি নির্ধারণের জন্য কীগুলি তুলনা করতে হবে না ক্ষুদ্রতর.
যতটা ডেটাসেটের বৈশিষ্ট্য রয়েছে, এটি বেশিরভাগই একটি সংস্থায় আসে: সম্ভাবনাগুলির ব্যাপ্তি জুড়ে চাবিগুলি যথাযথভাবে সমানভাবে (বা কমপক্ষে অনুমানযোগ্য) বিতরণ করা যায়। তা ছাড়া, একটি অন্তরঙ্গকরণ অনুসন্ধান আসলে বাইনারি অনুসন্ধানের চেয়ে ধীর হতে পারে ।
উদাহরণস্বরূপ, লো-কেস অক্ষরের স্ট্রিংগুলির সাথে কী হিসাবে একটি ডেটা সেট বিবেচনা করুন। ধরে নেওয়া যাক আপনার কাছে এমন একটি কী আছে যা "x" দিয়ে শুরু হবে। একটি প্রদত্ত অনুসন্ধান স্পষ্টভাবে ইঙ্গিত দেবে যে আপনার সেটটির শেষের খুব কাছাকাছি অনুসন্ধান শুরু করা উচিত। তবে, যদি আপনার বেশিরভাগ কীগুলি আসলে 'জেড' দিয়ে শুরু হয় এবং 'এ' যদিও 'y' থেকে কিছু নাও থাকে তবে আপনি যেটির সন্ধান করছেন সেটি সম্ভবত সেটটির শুরুতে খুব কাছাকাছি থাকতে পারে। অনুসন্ধান শুরু হওয়ার আগে যেখানে 'ডাব্লু' দিয়ে শুরু হওয়া স্ট্রিংটি থাকে তার কাছাকাছি যাওয়ার আগে এটি যথেষ্ট পরিমাণে পুনরাবৃত্তি নিতে পারে / নিতে পারে। প্রতিটি পুনরাবৃত্তি বিবেচনা থেকে সেট করা ডেটার মাত্র 10 ডলার সরিয়ে ফেলবে, সুতরাং এটি শুরু হওয়ার আগে যেখানে 'ডাব্লু' দিয়ে শুরু হওয়া চাবিগুলি বেশ কয়েকটি পুনরাবৃত্তি গ্রহণ করবে
বিপরীতে, একটি বাইনারি অনুসন্ধান মাঝখানে শুরু হবে , দ্বিতীয় পুনরাবৃত্তির এক-চতুর্থাংশের চিহ্নে পৌঁছাবেন, তৃতীয়টিতে একটি অষ্টমী চিহ্ন এবং এই জাতীয়। কীগুলির স্কিউ দ্বারা এটির কার্য সম্পাদন প্রায় ক্ষতিগ্রস্থ হবে। প্রতিটি পুনরাবৃত্তি বিবেচনা থেকে সেট করা অর্ধেক ডেটা সরিয়ে ফেলবে, ঠিক কীভাবে কীগুলি সমানভাবে বিতরণ করা হয়েছিল।
আমি তাড়াতাড়ি যোগ করতে তাড়াহুড়ো করেছিলাম যে এটি একটি প্রকোপ অনুসন্ধানটি বাইনারি অনুসন্ধানের চেয়ে লক্ষণীয়ভাবে খারাপভাবে তৈরি করতে যথেষ্ট স্কিউ বিতরণ করে। উদাহরণস্বরূপ, এটি স্থানীয়ভাবে তৈরি ক্লাস্টারিংয়ের মোটামুটি পরিমাণের উপস্থিতিতেও বেশ ভাল পারফর্ম করতে পারে।
আমার এটিও উল্লেখ করা উচিত যে কোনও অন্তরবিচ্ছিন্ন অনুসন্ধানের জন্য লিনিয়ার ইন্টারপোলেশন ব্যবহার করা প্রয়োজন হয় না। উদাহরণস্বরূপ, যদি আপনার কীগুলি কিছু অ-রৈখিক বিতরণ (উদাহরণস্বরূপ, একটি বেল-কার্ভ) অনুসরণ করে পরিচিত হয় তবে আন্তঃবন্টন কর্মের ক্ষেত্রে ফলাফলটিকে সামান্য বিতরণ করা থেকে সামান্য পৃথক করে নেওয়া একেবারে সহজ হয়ে যায়।