এই নিবন্ধে, আমরা নীচে দেওয়া সমস্যার বিবৃতিটির সমাধান সম্পর্কে শিখব৷
সমস্যা বিবৃতি − আমাদের একটি অ্যারে দেওয়া হয়েছে, পুনরাবৃত্ত উপায় ব্যবহার করে দ্রুত সাজানোর ধারণা ব্যবহার করে আমাদের এটি সাজাতে হবে
এখানে আমরা প্রথমে অ্যারে পার্টিশন করি এবং সাজানো অ্যারে পেতে আলাদা পার্টিশন সাজাই।
এখন নিচের বাস্তবায়নে সমাধানটি পর্যবেক্ষণ করা যাক—
উদাহরণ
# iterative way
def partition(arr,l,h):
i = ( l - 1 )
x = arr[h]
for j in range(l , h):
if arr[j] <= x:
# increment
i = i+1
arr[i],arr[j] = arr[j],arr[i]
arr[i+1],arr[h] = arr[h],arr[i+1]
return (i+1)
# sort
def quickSortIterative(arr,l,h):
# Creation of a stack
size = h - l + 1
stack = [0] * (size)
# initialization
top = -1
# push initial values
top = top + 1
stack[top] = l
top = top + 1
stack[top] = h
# pop from stack
while top >= 0:
# Pop
h = stack[top]
top = top - 1
l = stack[top]
top = top - 1
# Set pivot element at its correct position
p = partition( arr, l, h )
# elements on the left
if p-1 > l:
top = top + 1
stack[top] = l
top = top + 1
stack[top] = p - 1
# elements on the right
if p+1 < h:
top = top + 1
stack[top] = p + 1
top = top + 1
stack[top] = h
# main
arr = [2,5,3,8,6,5,4,7]
n = len(arr)
quickSortIterative(arr, 0, n-1)
print ("Sorted array is:")
for i in range(n):
print (arr[i],end=" ") আউটপুট
Sorted array is 2 3 4 5 5 6 7 8

সমস্ত ভেরিয়েবল স্থানীয় সুযোগে ঘোষণা করা হয়েছে এবং তাদের উল্লেখ উপরের চিত্রে দেখা যাচ্ছে।
উপসংহার
এই নিবন্ধে, আমরা শিখেছি কিভাবে আমরা পুনরাবৃত্তিমূলক দ্রুত সাজানোর জন্য একটি পাইথন প্রোগ্রাম তৈরি করতে পারি।