এই নিবন্ধে, আমরা নীচে দেওয়া সমস্যার বিবৃতিটির সমাধান সম্পর্কে জানব৷
সমস্যা বিবৃতি − আমাদের একটি অ্যারে দেওয়া হয়েছে, আমাদের এটিকে বাইনারি সন্নিবেশ সাজানোর ধারণা ব্যবহার করে সাজাতে হবে।
এখানে নাম অনুসারে, আমরা সন্নিবেশ সাজানোর অ্যালগরিদমের সাথে বাইনারি অনুসন্ধানের ধারণাটি ব্যবহার করি।
এখন নিচের বাস্তবায়নে সমাধানটি পর্যবেক্ষণ করা যাক -
উদাহরণ
# sort def insertion_sort(arr): for i in range(1, len(arr)): temp = arr[i] pos = binary_search(arr, temp, 0, i) + 1 for k in range(i, pos, -1): arr[k] = arr[k - 1] arr[pos] = temp def binary_search(arr, key, start, end): #key if end - start <= 1: if key < arr[start]: return start - 1 else: return start mid = (start + end)//2 if arr[mid] < key: return binary_search(arr, key, mid, end) elif arr[mid] > key: return binary_search(arr, key, start, mid) else: return mid # main arr = [1,5,3,4,8,6,3,4] n = len(arr) insertion_sort(arr) print("Sorted array is:") for i in range(n): print(arr[i],end=" ")
আউটপুট
Sorted array is : 1 3 3 4 4 5 5 6 8
সমস্ত ভেরিয়েবল স্থানীয় সুযোগে ঘোষণা করা হয়েছে এবং তাদের উল্লেখ উপরের চিত্রে দেখা যাচ্ছে।
উপসংহার
এই নিবন্ধে, আমরা শিখেছি কিভাবে আমরা বাইনারি সন্নিবেশ সাজানোর জন্য একটি পাইথন প্রোগ্রাম তৈরি করতে পারি