python和冒泡排序

冒泡排序描述:

       冒泡排序是指重复地走访过要排序的数列,一次比较相邻的元素,如果它们顺序不对(一般指升序)就把它们交换过来,直到没有可交换的元素,则排序完成(最终从小到大进行排序)。

原理分析:

        根据原理可知,分为两层,第一层遍历一趟只选出一个数,假设有n个数,则需要进行n-1趟;

        第二层,确定后的数字不用再进行比较,因此每趟只需要比较n-i-i次(i为已执行的次数)

python实现如下:

       根据上面的分析,我们实现随机输入一组数,对其进行冒泡排序。完整代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

x = raw_input()
list = x.split(',')
for i in range(0,len(list)):
    list[i] = int(list[i])

def bubble_sort(list):
    n = len(list)
    for i in range(0, n-1):
        for j in range(0, n-1-i):
            if list[j] > list[j + 1]:
                list[j], list[j + 1] = list[j + 1], list[j]
    return list
if __name__ ==  '__main__':
    print bubble_sort(list)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值