Python 冒泡,选择,插入排序使用实例

yipeiwu_com6年前Python基础

最近学习了python基础,写一下3大排序练练手:

复制代码 代码如下:

'''
Created on 2013-8-23
@author: codegeek
'''
//冒泡排序
def bubble_sort(seq):
    for i in range(len(seq)):
        for j in range(i,len(seq)):
            if seq[j] < seq[i]:
                tmp = seq[j]
                seq[j] = seq[i]
                seq[i] = tmp
//选择排序
def selection_sort(seq):
    for i in range(len(seq)):
        position = i
        for j in range(i,len(seq)):
            if seq[position] > seq[j]:
                position = j
        if position != i:
                tmp = seq[position]
                seq[position] = seq[i]
                seq[i] = tmp
//插入排序
def insertion_sort(seq):
    if len(seq) > 1:
        for i in range(1,len(seq)):
            while i > 0 and seq[i] < seq[i-1]:
                tmp = seq[i]
                seq[i] = seq[i-1]
                seq[i-1] = tmp
                i = i - 1
//       
if __name__ == "__main__":
    print "--------bubble_sort-------------"
    seq = [22,1,33,4,7,6,8,9,11]
    bubble_sort(seq)
    print seq
    print "--------selection_sort-------------"
    seq = [88,44,33,4,7,6,8,9,11]
    selection_sort(seq)
    print seq
    print "--------insertion_sort-------------"
    seq = [777,44,33,4,7,6,1111,100,11]
    insertion_sort(seq)
    print seq

以上就是3则Python中冒泡,选择,插入排序的代码及使用方法了,希望小伙伴们能够喜欢。

相关文章

深入浅析python 协程与go协程的区别

进程、线程和协程 进程的定义: 进程,是计算机中已运行程序的实体。程序本身只是指令、数据及其组织形式的描述,进程才是程序的真正运行实例。 线程的定义: 操作系统能够进行运算调度的最小单位...

python OpenCV学习笔记之绘制直方图的方法

python OpenCV学习笔记之绘制直方图的方法

本篇文章主要介绍了python OpenCV学习笔记之绘制直方图的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 官方文档 – https://doc...

Python字符串中删除特定字符的方法

Python字符串中删除特定字符的方法

分析 在Python中,字符串是不可变的。所以无法直接删除字符串之间的特定字符。 所以想对字符串中字符进行操作的时候,需要将字符串转变为列表,列表是可变的,这样就可以实现对字符串中特定字...

Python3.x对JSON的一些操作示例

前言 本文主要给大家介绍了关于python3对JSON的一些操作,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、Dictionary 转为JSON 将dict转为...

实例详解Python装饰器与闭包

闭包是Python装饰器的基础。要理解闭包,先要了解Python中的变量作用域规则。 变量作用域规则 首先,在函数中是能访问全局变量的: >>> a = 'glob...