इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे।
समस्या कथन - हमें एक सूची दी गई है, हमें दी गई सूची पर बिटोनिक सॉर्ट करने और सूची प्रदर्शित करने की आवश्यकता है
कॉकटेल सॉर्ट करें - यहां सॉर्ट बबल सॉर्ट की तरह होता है जहां दोनों दिशाओं में पुनरावृत्ति होती है।
एल्गोरिदम
सबसे पहले सरणी को बाएं से दाएं पार किया जाता है। ट्रैवर्सल के दौरान, आसन्न वस्तुओं की तुलना की जाती है और शर्तों के आधार पर, मूल्यों की अदला-बदली की जाती है। इससे सबसे बड़ी संख्या एरे के अंत में होगी।
अब सरणी को विपरीत दिशा में घुमाया जाता है और शर्तों के आधार पर तत्वों की अदला-बदली की जाती है। इससे सबसे छोटी संख्या शुरुआत में होगी।
आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें -
उदाहरण
# function
def cocktailSort(a):
n = len(a)
flag = True
start = 0
end = n-1
while (flag==True):
# to ignore the result of the previous iteration
flag = False
# left to right traversal
for i in range (start, end):
if (a[i] > a[i+1]) :
a[i], a[i+1]= a[i+1], a[i]
flag=True
# if no swap takes place array remains sorted
if (flag==False):
break
# otherwise, reset the flag
flag = False
# last item is aldready sorted
end = end-1
# iteration from right to left
for i in range(end-1, start-1,-1):
if (a[i] > a[i+1]):
a[i], a[i+1] = a[i+1], a[i]
flag = True
# first element is already sorted
start = start+1
# main
a = [2,5,4,3,8,3,4,6]
cocktailSort(a)
print("Sorted array is:")
for i in range(len(a)):
print (a[i],end=" ") आउटपुट
Sorted array is: 2 3 3 4 4 5 6 8

सभी चर स्थानीय दायरे में घोषित किए गए हैं और उनके संदर्भ ऊपर की आकृति में देखे गए हैं।
निष्कर्ष
इस लेख में, हमने सीखा है कि हम कॉकटेल सॉर्ट के लिए पायथन प्रोग्राम कैसे बना सकते हैं