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

yipeiwu_com7年前Python基础

本文所述的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之变量命名规则

变量命名规则 下面是关于变量名(也称为标识符)的一些规则 必须以一个字母或一个下划线字符开头。后面可以使用一个字母、数字或下划线字符的序列,长度不限。 字母可以是大写或小写,大小写...

Python实现mysql数据库更新表数据接口的功能

前言 昨天,因为项目需求要添加表的更新接口,来存储预测模型训练的数据,所以自己写了一段代码实现了该功能,在开始之前,给大家分享python 操作mysql数据库基础: #coding...

浅谈python中的getattr函数 hasattr函数

hasattr(object, name) 作用:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect, name)是否抛出异常来实现的...

python中异常报错处理方法汇总

python中异常报错处理方法汇总

首先异常是什么,异常白话解释就是不正常,程序里面一般是指程序员输入的格式不规范,或者需求的参数类型不对应,不全等等。 Python中异常是指程序中的例外,违例情况。异常机制是指程序出现错...

Python采用Django开发自己的博客系统

Python采用Django开发自己的博客系统

好久之前就想做一下自己的博客系统了,但是在网上查了查好像是需要会一些Node.js的相关知识,而且还要安装辣么多的库什么的,就不想碰了。但是我遇到了Django这么一款神器,没想到我的博...