奇偶排序/堆积排序的 Python 程序


在本文中,我们将学习如何解决下面给出的问题陈述。

问题陈述 - 给我们一个数组,我们需要使用堆积排序进行排序。

这里,我们有两个阶段:奇数阶段和偶数阶段。在奇数阶段,对奇数索引元素执行冒泡排序,在偶数阶段,对偶数索引元素执行冒泡排序。

现在,让我们在下面的实现中观察解决方案−

示例

def oddEvenSort(arr, n):
   # flag
   isSorted = 0
   while isSorted == 0:
      isSorted = 1
      temp = 0
      for i in range(1, n-1, 2):
         if arr[i] > arr[i+1]:
            arr[i], arr[i+1] = arr[i+1], arr[i]
            isSorted = 0
      for i in range(0, n-1, 2):
         if arr[i] > arr[i+1]:
            arr[i], arr[i+1] = arr[i+1], arr[i]
            isSorted = 0
   return
arr = [1,4,2,3,6,5,8,7]
n = len(arr)
oddEvenSort(arr, n)
print(“Sorted sequence is:”)
for i in range(0, n):
   print(arr[i], end =" ")

输出

Sorted sequence is:
1 2 3 4 5 6 7 8

所有变量都在局部作用域中声明,并且如上图所示,可以看到它们的引用。

结论

在本文中,我们学习了如何编写一个用于奇偶排序/堆积排序的 Python 程序

更新于: 2019-12-20

215 浏览

启动您的 职业

结业并获得证书

开始
广告