Python实现冒泡,插入,选择排序简单实例


Posted in Python onAugust 18, 2014

本文所述的Python实现冒泡,插入,选择排序简单实例比较适合Python初学者从基础开始学习数据结构和算法,示例简单易懂,具体代码如下:

# -*- coding: cp936 -*-
#python插入排序
def insertSort(a):
  for i in range(len(a)-1):
    #print a,i 
    for j in range(i+1,len(a)):
      if a[i]>a[j]:
        temp = a[i]
        a[i] = a[j]
        a[j] = temp
  return a

#Python的冒泡排序  
def bubbleSort(alist):
  for passnum in range(len(alist)-1,0,-1):
    #print alist,passnum
    for i in range(passnum):
      if alist[i]>alist[i+1]:
        temp = alist[i]
        alist[i] = alist[i+1]
        alist[i+1] = temp
  return alist

#Python的选择排序 
def selectionSort(alist):
  for i in range(len(alist)-1,0,-1):
    maxone = 0
    for j in range(1,i+1):
      if alist[j]>alist[maxone]:
        maxone = j
    temp = alist[i] 
    alist[i] = alist[maxone]
    alist[maxone] = temp 
  return alist

alist = [54,26,93,17,77,31,44,55,20]
#print bubbleSort(alist)
alist = [54,26,93,17,77,31,44,55,20]
print selectionSort(alist)

感兴趣的朋友可以动手测试一下本文实例,相信会有新的收获。

Python 相关文章推荐
Python3.x和Python2.x的区别介绍
Feb 12 Python
Python中的生成器和yield详细介绍
Jan 09 Python
Pandas标记删除重复记录的方法
Apr 08 Python
Python3读取Excel数据存入MySQL的方法
May 04 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
python全栈要学什么 python全栈学习路线
Jun 28 Python
python基于递归解决背包问题详解
Jul 03 Python
详解如何用TensorFlow训练和识别/分类自定义图片
Aug 05 Python
python实现对图片进行旋转,放缩,裁剪的功能
Aug 07 Python
解决pandas展示数据输出时列名不能对齐的问题
Nov 18 Python
python redis 批量设置过期key过程解析
Nov 26 Python
python 怎样进行内存管理
Nov 10 Python
Python算法之栈(stack)的实现
Aug 18 #Python
Python实现partial改变方法默认参数
Aug 18 #Python
Python实现发送email的几种常用方法
Aug 18 #Python
Python内置数据类型详解
Aug 18 #Python
Python3基础之输入和输出实例分析
Aug 18 #Python
一个计算身份证号码校验位的Python小程序
Aug 15 #Python
基于Python的身份证号码自动生成程序
Aug 15 #Python
You might like
PHP备份/还原MySQL数据库的代码
2011/01/06 PHP
Symfony模板的快捷变量用法实例
2016/03/17 PHP
WHOOPS PHP调试库的使用
2017/09/29 PHP
PHP区块查询实现方法分析
2018/05/12 PHP
PHP面向对象程序设计之多态性的应用示例
2018/12/19 PHP
javascript实现动态CSS换肤技术的脚本
2007/06/29 Javascript
javascript之更有效率的字符串替换
2008/08/02 Javascript
提高网站信任度的技巧
2008/10/17 Javascript
javascript 常用代码技巧大收集
2009/02/25 Javascript
Mootools 1.2教程(2) DOM选择器
2009/09/14 Javascript
javascript 设置文本框中焦点的位置
2009/11/20 Javascript
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
node.js chat程序如何实现Ajax long-polling长链接刷新模式
2012/03/13 Javascript
二叉树先序遍历的非递归算法具体实现
2014/01/09 Javascript
JavaScript中奇葩的假值示例应用
2014/03/11 Javascript
jQuery实现的精美平滑二级下拉菜单效果代码
2016/03/28 Javascript
JavaScript的模块化开发框架Sea.js上手指南
2016/05/12 Javascript
详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)
2017/07/13 Javascript
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
工作中常用到的ES6语法
2018/09/04 Javascript
[00:56]2014DOTA2国际邀请赛 DK、iG 赛前探访
2014/07/10 DOTA
[53:15]2018DOTA2亚洲邀请赛3月29日 小组赛A组 KG VS OG
2018/03/30 DOTA
python新手经常遇到的17个错误分析
2014/07/30 Python
Python实现队列的方法
2015/05/26 Python
Python 错误和异常代码详解
2018/01/29 Python
Python中的函数式编程:不可变的数据结构
2018/10/08 Python
使用Python抓取豆瓣影评数据的方法
2018/10/17 Python
python如何爬取网页中的文字
2020/07/28 Python
Python Selenium XPath根据文本内容查找元素的方法
2020/12/07 Python
超30万乐谱下载:Musicnotes.com
2016/09/24 全球购物
C#笔试题
2015/07/14 面试题
竞选学习委员演讲稿
2014/04/28 职场文书
学雷锋演讲稿汇总
2014/05/10 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS
Python 如何实现文件自动去重
2021/06/02 Python
Python答题卡识别并给出分数的实现代码
2021/06/22 Python