Python 递归插入排序程序


在本文中,我们将了解如何解决以下问题陈述。

问题陈述− 给定一个数组,我们需要使用递归插入排序的概念对其进行排序。

插入排序通过创建一个并行数组来实现,我们可以在其中以指定顺序手动插入元素。

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

示例

 在线演示

# recursive way
def insertionSortRecursive(arr,n):
   # base case
   if n<=1:
      return
   # Sort
   insertionSortRecursive(arr,n-1)
   last = arr[n-1]
   j = n-2
   # move ahead
   while (j>=0 and arr[j]>last):
      arr[j+1] = arr[j]
      j = j-1
   arr[j+1]=last
# main
arr = [1,5,3,4,8,6,3,4,5]
n = len(arr)
insertionSortRecursive(arr, n)
print("Sorted array is:")
for i in range(n):
   print(arr[i],end=" ")

输出

Sorted array is :
1 3 3 4 4 5 5 6 8

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

结论

在本文中,我们学习了如何编写 Python 递归插入排序程序

更新于: 2019 年 12 月 20 日

1K+ 次浏览

启动您的 职业

通过完成课程获得认证

开始学习
广告