学习冒泡排序算法

    冒泡排序算法进行的是这样一个过程:遍历文件,若是近邻的两个元素大小顺序不对,就将二者交换,重复这样的操做指导整个文件排好序。python

    假设咱们都是将文件元素从右移到左的。第一遍中,当遇到最小的元素时,将它与左边元素逐个交换,直到将最小的元素移到队列的最左边。而后第二遍中,将第二小的元素放到队列左边第二位中,依次类推。所以,一共须要N遍。冒泡排序其实是一种选择排序,但须要开销更多工做将每一个元素放到合适的位置。算法

python代码实现:spa

#!/usr/bin/env python

def swap(array,i,j):
    temp = array[i]
    array[i] = array[j]
    array[j] = temp

def bubble(array,begin,end):
    if(end > begin >= 0):
        for i in range(end):
            for j in range (end,begin+i,-1):
                if array[j] < array[j-1]:
                    swap(array,j,j-1)
            print array
            print '--------------------'
if __name__=="__main__":
    array = [4,5,1,8,0,3,6]
    bubble(array,0,len(array)-1)
    print array

参考文档:《算法:C语言实现》code

相关文章
相关标签/搜索