Python 程序进行选择排序


在本文中,我们将学习选择排序及其在 Python 3.x 或更早版本中的实现方式。

选择排序算法中,通过递归地从未排序部分中查找最小元素并将其插入开头,对数组进行排序。在给定的数组上执行选择排序期间形成两个子数组。

  • 已排序的子数组
  • 未排序的子数组。

在选择排序的每次迭代过程中,最小元素从未排序子数组中弹出并插入到已排序子数组中。

让我们看看算法的可视化表示 −

现在让我们看看算法的实现方式 −

示例

 实时演示

A = ['t','u','t','o','r','i','a','l']
for i in range(len(A)):
   min_= i
   for j in range(i+1, len(A)):
      if A[min_] > A[j]:
         min_ = j
   #swap
A[i], A[min_] = A[min_], A[i]
# main
for i in range(len(A)):
   print(A[i])

输出

a
i
l
o
r
t
t
u

在此,我们按升序从算法中接收输出。最小值是当前值,与其他所有值进行比较。算法的分析参数如下 −

时间复杂度 − O(n^2)

辅助空间 − O(1)

这里所有变量都声明在全局框架中,如下图所示

结论

在本文中,我们学习了选择排序及其在 Python 3.x 或更早版本中的实现方式。

更新于: 2019 年 9 月 11 日

2K+ 浏览次数

提升你的 职业

完成课程获得认证

开始学习
广告