Python算法之---冒泡,选择,插入排序算法

'''
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


上一篇:Python中数据格式化的pprint和pformat
下一篇:python数据类型判断type与isinstance的区别

PythonTab微信公众号:

Python技术交流互助群 ( 请勿加多个群 ):

群1: 87464755

群2: 333646237

群3: 318130924

群4: 385100854