Python选择排序、冒泡排序、合并排序代码实例


Posted in Python onApril 10, 2015

前两天刚装了python 3.1.1, 禁不住技痒写点code。
1.选择排序

>>> def SelSort(L):

    length=len(L)

    for i in range(length-1):

        minIdx=i

        minVal=L[i]

        j=i+1

        while j<length:

            if minVal>L[j]:

                minIdx=j

                minVal=L[j]

            j=j+1

        L[i],L[minIdx]=L[minIdx],L[i]

    return L

2.冒泡排序

>>> def bubSort(L):

    swapped=True

    while swapped:

        swapped=False

        for i in range(len(L)-1):

            if L[i]>L[i+1]:

                L[i],L[i+1]=L[i+1],L[i]

                swapped=True

    return L

3.合并排序
>>> def merge(left,right):

    result=[]

    i,j=0,0

    while i<len(left) and j<len(right):

        if left[i]<=right[j]:

            result.append(left[i])

            i=i+1

        else:

            result.append(right[j])

            j=j+1

    result+=left[i:]

    result+=right[j:]

    return result
>>> def mergesort(L):

    if len(L) < 2:

        return L

    else:

        middle = int(len(L)/2)

        left = mergesort(L[:middle])

        right = mergesort(L[middle:])

        return merge(left, right)

Python 相关文章推荐
python爬虫 使用真实浏览器打开网页的两种方法总结
Apr 21 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
Apr 23 Python
Pandas之MultiIndex对象的示例详解
Jun 25 Python
python检测服务器端口代码实例
Aug 31 Python
基于Python解密仿射密码
Oct 21 Python
Django 删除upload_to文件的步骤
Mar 30 Python
python学生管理系统的实现
Apr 05 Python
Python实现一个简单的毕业生信息管理系统的示例代码
Jun 08 Python
使用Keras预训练好的模型进行目标类别预测详解
Jun 27 Python
Python生成pdf目录书签的实例方法
Oct 29 Python
Django多数据库联用实现方法解析
Nov 12 Python
Python实现对齐打印 format函数的用法
Apr 28 Python
Python字符串中查找子串小技巧
Apr 10 #Python
简单介绍Ruby中的CGI编程
Apr 10 #Python
详细介绍Ruby中的正则表达式
Apr 10 #Python
对于Python的Django框架部署的一些建议
Apr 09 #Python
Python线程中对join方法的运用的教程
Apr 09 #Python
在Python的Flask框架下使用sqlalchemy库的简单教程
Apr 09 #Python
详解Python中的正则表达式的用法
Apr 09 #Python
You might like
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
laravel 执行迁移回滚示例
2019/10/23 PHP
Javascript string 扩展库代码
2010/04/09 Javascript
JQuery中each()的使用方法说明
2010/08/19 Javascript
js自动生成对象的属性示例代码
2013/10/28 Javascript
Javascript 赋值机制详解
2014/11/23 Javascript
js实现点击图片将图片地址复制到粘贴板的方法
2015/02/16 Javascript
Javascript的表单验证长度
2016/03/16 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
2016/07/24 Javascript
vue2.0设置proxyTable使用axios进行跨域请求的方法
2017/10/19 Javascript
Vue 自定义动态组件实例详解
2018/03/28 Javascript
vue axios登录请求拦截器
2018/04/02 Javascript
Vue微信项目按需授权登录策略实践思路详解
2018/05/07 Javascript
react中实现搜索结果中关键词高亮显示
2018/07/31 Javascript
layer.open 按钮的点击事件关闭方法
2018/08/17 Javascript
js实现固定区域内的不重叠随机圆
2019/10/24 Javascript
ES6如何用一句代码实现函数的柯里化
2020/01/18 Javascript
微信小程序吸底区域适配iPhoneX的实现
2020/04/09 Javascript
[01:18]PWL开团时刻DAY4——圣剑与抢盾
2020/11/03 DOTA
python实用代码片段收集贴
2015/06/03 Python
Python中 传递值 和 传递引用 的区别解析
2018/02/22 Python
TensorFlow模型保存/载入的两种方法
2018/03/08 Python
python实现合并多个list及合并多个django QuerySet的方法示例
2019/06/11 Python
基于MATLAB和Python实现MFCC特征参数提取
2019/08/13 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
IE9对HTML5中部分属性不支持的原因分析
2014/10/15 HTML / CSS
德国玩具商店:Planet Happy DE
2021/01/16 全球购物
德尔福集团DELPHI的笔试题
2012/02/22 面试题
单位刻章介绍信范文
2014/01/11 职场文书
文化宣传方案
2014/03/13 职场文书
2014年学习厉行节约反对浪费思想汇报
2014/09/10 职场文书
工程部文员岗位职责
2015/02/04 职场文书
公司承诺书格式范文
2015/04/28 职场文书
童年读书笔记
2015/06/26 职场文书
谢师宴家长答谢词
2015/09/30 职场文书
Java 定时任务技术趋势简介
2022/05/04 Java/Android