分享Python实现选择排序的实例教程


本文摘自php中文网,作者零下一度,侵删。

选择法也算是入门的一种排序算法,比起冒泡法,它的方法巧妙了一些,它的出发点在于“挑”,每次挑选数组的最值,与前置元素换位,然后继续挑选剩余元素的最值并重复操作。个人认为选择排序的意义不在于排序本身,而在于挑选和置换的方法,对于一些问题很有帮助。

选择排序:

选择排序(Selection sort)是一种简单直观的 排序算法 。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动元素的排序方法中,选择排序属于非常好的一种。

Python 实现:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

# selection_sort.py

def selection_sort(arr):

  count = len(arr)

  for i in range(count-1):  # 交换 n-1 次

    min = i

    # 找最小数

    for j in range(i, count):

      if arr[min] > arr[j]:

        min = j

    arr[min], arr[i] = arr[i], arr[min# 交换

  return arr

 

my_list = [6, 23, 2, 54, 12, 6, 8, 100]

print(selection_sort(my_list))

以上就是分享Python实现选择排序的实例教程的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python实现列表list以及list与数组array的相互转换的方法介绍

Python怎么保留一位小数输出

为什么要设计好目录结构?

如何将字符串转换为datetime

Python 面向对象视频资料分享

Python如何编写安卓程序

有关Python的md5加密用法详解

Python可以用来干什么?

举例说明Python中空格是属于字符

Python不能做什么

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...