Python 100例-37


实例37

题目: 对10个数进行排序。

程序分析: 可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。

程序源代码:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

if __name__ == "__main__":
    N = 10
    # input data
    print 'please input ten num:\n'
    l = []
    for i in range(N):
        l.append(int(raw_input('input a number:\n')))
    print
    for i in range(N):
        print l[i]
    print

    # sort ten num
    for i in range(N - 1):
        min = i
        for j in range(i + 1,N):
            if l[min] > l[j]:min = j
        l[i],l[min] = l[min],l[i]
    print 'after sorted'
    for i in range(N):
        print l[i]

以上实例输出结果为:

please input ten num:

input a number:
5
input a number:
3
input a number:
23
input a number:
67
input a number:
2
input a number:
56
input a number:
45
input a number:
98
input a number:
239
input a number:
9

5
3
23
67
2
56
45
98
239
9

after sorted
2
3
5
9
23
45
56
67
98
239