关于算法:python算法学习记录冒泡排序

43次阅读

共计 595 个字符,预计需要花费 2 分钟才能阅读完成。

''''
明天记录一下冒泡排序算法
所谓排序无非把一些数字按肯定的规定进行排列,比方把【1,3,4,2,6,5,8】排列成【1,2,3,4,5,6,8】的模式, 上面开始写代码
'''

#首先定义一个函数
#参数间接传入一个列表
def my_sort_(array):
    #对排序过程进行循环, 次数为列表的长度
    for i in range(len(array)):
        #对列表进行遍历,次数为列表长度减去 i 再减 1
        for j in range(0,len(array)-i-1):
            #这里咱们对 array[j] 和 array[j+1] 进行判断,并且创立一个 temp 变量
            #为什么要创立一个 temp 变量呢,这里波及到变量的援用问题
            #咱们假如 array[0]-->1,array[1]-->2, 如果咱们间接替换 array[0] 和 array[1] 的话,#在替换过程中会造成数据损失,因为在 python 中,变量名相似一种利用指针,它是通过地址来拜访
            #数据的,对变量名赋值实际上是在更改变量名所代表的地址,例如 a=1, a=2,a 代表的是不同的地址
            #当咱们把 a 从新赋予 2 时,1 就被垃圾收集掉了,所以为了保留数据,咱们须要从新把 1 赋予一个变量
            # 所以咱们须要创立一个 temp 变量来保留数据
            if array[j]>array[j+1]:
                temp = array[j]
                array[j] = array[j+1]
                array[j+1] = temp
    return array

正文完
 0