首页 >后端开发 >Python教程 >冒泡排序有哪2种写法,用冒泡排序对10个数进行排列

冒泡排序有哪2种写法,用冒泡排序对10个数进行排列

Tomorin
Tomorin原创
2018-08-17 14:46:235321浏览

可以采用冒泡排序,每次把相邻的两个比较大小,然后把大一点儿的数据放在最后面,这样第一趟下来,最大的那个数就跑到了最后面,下一次排序就不用跟最后一个数字比较了,然后倒数第二大的数字会在倒数第二...因此可以使用两个函数,一个用于控制每一趟比较的元素个数,一个用于交换:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 if __name__ == "__main__":    N = 10
    # input data
    print '请输入10个数字:\n'
    l = []
    for i in range(N):        
          l.append(int(raw_input('输入一个数字:\n')))
    print
    for i in range(N):        
          print l[i]
    print
 
    # 排列10个数字
    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 '排列之后:'
    for i in range(N):   
        print l[i]

以上实例输出结果为:

请输入10个数字:
输入一个数字:5
输入一个数字:3
输入一个数字:23
输入一个数字:67
输入一个数字:2
输入一个数字:56
输入一个数字:45
输入一个数字:98
输入一个数字:239
输入一个数字:9
5
3
23
67
2
56
45
98
239
9

排列之后:
2
3
5
9
23
45
56
67
98
239


以上是冒泡排序有哪2种写法,用冒泡排序对10个数进行排列的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn