এই নিবন্ধে, আমরা Python 3.x-এ সন্নিবেশ সাজানোর বাস্তবায়ন সম্পর্কে শিখব। অথবা আগে।
অ্যালগরিদম
-
প্রতিটি পুনরাবৃত্তিতে সাজানো অ্যারে বৃদ্ধি করে ইনপুট উপাদানগুলির উপর পুনরাবৃত্তি করুন।
-
বাছাই করা অ্যারেতে উপলব্ধ সবচেয়ে বড় মানের সাথে বর্তমান উপাদানের তুলনা করুন।
-
যদি বর্তমান উপাদানটি বড় হয়, তাহলে এটি উপাদানটিকে তার জায়গায় রেখে পরবর্তী উপাদানটিতে চলে যায় অন্যথায় এটি সাজানো অ্যারেতে তার সঠিক অবস্থান খুঁজে পায় এবং এটিকে অ্যারের সেই অবস্থানে নিয়ে যায়৷
-
বাছাই করা অ্যারেতে সামনের একটি অবস্থানে থাকা সমস্ত উপাদানগুলিকে ডানদিকে, যা বর্তমান উপাদানের চেয়ে বড়, স্থানান্তরিত করার মাধ্যমে এটি অর্জন করা হয়৷
এখন অ্যালগরিদমের ভিজ্যুয়াল উপস্থাপনা দেখি
এখন এর বাস্তবায়ন দেখি
উদাহরণ
def insertionSort(arr): for i in range(1, len(arr)): key = arr[i] # Move elements of arr[0..i-1], that are greater than key, # to one position ahead of their current position j = i-1 while j >=0 and key < arr[j] : arr[j+1] = arr[j] j -= 1 arr[j+1] = key # main arr = ['t','u','t','o','r','i','a','l'] insertionSort(arr) print ("The sorted array is:") for i in range(len(arr)): print (arr[i])
আউটপুট
The sorted array is: a i l o r t t u
সময়ের জটিলতা: O(n*2)
সহায়ক স্থান: O(1)
সমস্ত ভেরিয়েবল গ্লোবাল ফ্রেমে ঘোষণা করা হয়েছে যেমন নীচের চিত্রে দেখানো হয়েছে −
উপসংহার
এই নিবন্ধে, আমরা Python 3.x-এ সন্নিবেশের সাজানোর এবং এর বাস্তবায়ন সম্পর্কে শিখেছি। বা তার আগে।