বাইনারি সার্চ হল একটি সার্চ অ্যালগরিদম যা একটি সাজানো অ্যারের মধ্যে লক্ষ্য মানের অবস্থান খুঁজে পায়। বাইনারি অনুসন্ধান বাছাই করা অ্যারের মধ্যম উপাদানের সাথে লক্ষ্য মান তুলনা করে। বাইনারি অনুসন্ধানের সময় জটিলতা হল O(1)। এটি একটি C++ প্রোগ্রাম যেখানে আমরা বিভিন্ন প্রয়োগ করি। C++ STL
-এ বাইনারি অনুসন্ধান ফাংশনঅ্যালগরিদম
পূর্ণসংখ্যা মানের ভেক্টর শুরু করুন। ফাংশনগুলি এখানে ব্যবহার করা হয়:binary_search(start_pointer, end_pointer, value) =অ্যারেতে উপস্থিত মানটি অন্যথায় মিথ্যা হলে সত্য প্রদান করে। low_bound(start_pointer, end_pointer, value) =যদি কন্টেইনারে 1টি মানের উপস্থিতি থাকে তাহলে পয়েন্টারকে "মানের অবস্থান"-এ ফেরত দেয়। যদি কন্টেইনারে একাধিক মানের উপস্থিতি থাকে তাহলে পয়েন্টারকে "মানের প্রথম অবস্থানে" ফিরিয়ে দেয়। যদি কন্টেইনারে মানের উপস্থিতি না থাকে তবে পয়েন্টারকে "মান অপেক্ষা পরবর্তী উচ্চ সংখ্যার অবস্থান" এ ফেরত দেয়। upper_bound(start_pointer, end_pointer, value) =কন্টেইনারে 1টি মানের উপস্থিতি থাকলে পয়েন্টারকে "পরবর্তী উচ্চতর মানের চেয়ে মানের অবস্থান"-এ ফেরত দেয়। যদি কন্টেইনারে একাধিক মানের উপস্থিতি থাকে তাহলে পয়েন্টারকে "মান শেষ হওয়ার চেয়ে পরবর্তী উচ্চ সংখ্যার প্রথম অবস্থানে" ফিরিয়ে দেয়। যদি কন্টেইনারে মানের উপস্থিতি না থাকে তবে পয়েন্টারকে "মান অপেক্ষা পরবর্তী উচ্চ সংখ্যার অবস্থান" এ ফেরত দেয়। ফলাফল প্রিন্ট করুন। শেষ।উদাহরণ কোড
#includenamespace ব্যবহার করে std;int main() { vector a ={6,7,10,14,16,20}; if (binary_search(a.begin(), a.end(), 50)) cout <<"50 বিদ্যমান ভেক্টরে"; else cout <<"50 বিদ্যমান নেই"; cout < আউটপুট
50 বিদ্যমান নেই7 ভেক্টরে বিদ্যমান 7-এর অবস্থান নিম্ন_বাউন্ড ব্যবহার করে 1উর্ধ্ব_বাউন্ড 2 ব্যবহার করে 7-এর অবস্থান