इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे।
समस्या कथन
हमें एक सरणी दी गई है, हमें नोम सॉर्ट का उपयोग करके इसे क्रमबद्ध करना है।
एल्गोरिदम
1. सबसे पहले हम सरणी को बाएं से दाएं पार करते हैं। 2. अब, यदि वर्तमान तत्व पिछले तत्व से बड़ा या बराबर है तो हम एक कदम आगे बढ़ते हैं। 3. अन्यथा, यदि वर्तमान तत्व पिछले तत्व से छोटा है तो इन दो तत्वों को स्वैप करें और एक कदम पीछे जाएं। 4. उपरोक्त चरणों को तब तक दोहराएं जब तक हम सरणी के अंत तक नहीं पहुंच जाते।
उदाहरण
def gnomeSort(arr, n):
index = 0
while index < n:
if index == 0:
index = index + 1
if arr[index] >= arr[index - 1]:
index = index + 1
else:
arr[index], arr[index-1] = arr[index-1], arr[index]
index = index - 1
return arr
# मुख्य
arr = [1, 4, 2, 3, 6, 5, 8, 7]
n = len(arr)
arr = gnomeSort(arr, n)
print("Sorted sequence is:")
for i in arr:
print(i, end=" ")
आउटपुट
Sorted sequence is: 1 2 3 4 5 6 7 8
निष्कर्ष
इस लेख में हमने नोम सॉर्ट के पायथन प्रोग्राम के बारे में सीखा।