Python选择排序

[复制链接]
sosoyoyo 发表于 2017-12-31 07:21:04 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到" [6 [- Y' K- x$ x( B6 u0 r8 f
排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所7 p0 J* z0 p* c; z- b0 A
Python实现( \5 N3 r# x6 a" p  y
def SelectSort(lists):
2 r0 k* U4 S- a+ E& pcount=len(lists) for i in range(0,count): for j in range(i+1, count): if lists > lists[j]:
6 F  X2 {- j+ }! s0 ~6 ?, C7 [lists , lists[j] = lists[j] , lists
0 E" h! z, k$ @, vprint("===========")
* Z$ b) x& V8 V$ `print(i,j)  h8 ^- ?$ e: f
print(lists)if __name__ == "__main__":1 K! Q* w& U& e" `0 G; C
lists = [3, 5, 4, 2, 1, 6]
" A2 l. y5 l5 }+ Uprint(lists)# e) E- M7 E# P
SelectSort(lists)1234567891011121314" @8 b% `- f. Q8 ^) {$ m) T
运行结果如下所示
/ `6 ?# R5 v! ~' h. _
$ O9 B4 v* @- i3 V

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

精彩评论4

hqingxi 发表于 2017-12-31 07:21:25 | 显示全部楼层
for语句里面的i,j啥意思,小白求问
回复

使用道具 举报

assdsss 发表于 2017-12-31 07:42:02 | 显示全部楼层
sort不是可以直接排序吗?
回复

使用道具 举报

qXwqtnuK 发表于 2017-12-31 08:01:25 | 显示全部楼层
看起来有点像冒泡排序
回复

使用道具 举报

星星糖SUNG 发表于 2017-12-31 08:21:05 | 显示全部楼层
一看思路也可用递归
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
推荐阅读更多+
阅读排行更多+
用心服务创业者
0851-88611148
周一至周五 9:00-18:00
意见反馈:admin@0851life.com

扫一扫关注我们

Powered by 童码少儿编程 X3.4© 2001-2013 0851life Inc.|网站地图