您的位置:首页 > 编程语言 > Python开发

文章标题

2016-04-25 13:30 387 查看

python实现选择排序

工作原理:

每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。

运行环境:

sublime Text3;

python2.7.10

def selectionSort(theSeq):
n = len(theSeq)
for i in range(n-1):
# 假设第i个元素为最小值
smallNdx = i
for j in range(i+1, n):
#确定是否任何其他元素包含一个较小的值
if theSeq[j] < theSeq[smallNdx]:
smallNdx = j

#交换第i个元素值和smallNdx值,仅当的最小值不在其适当的位置。
if smallNdx != i:
tmp = theSeq[i]
theSeq[i] = theSeq[smallNdx]
theSeq[smallNdx] = tmp
return theSeq

theSeq = [10,51,2,18,4,31,13,5,23,64,29]

if __name__ == '__main__':
print selectionSort(theSeq)


排序结果:

[2, 4, 5, 10, 13, 18, 23, 29, 31, 51, 64]
[Finished in 0.4s]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python