python冒泡排序

北城余情 提交于 2019-12-11 06:18:32

python冒泡法排序

#python冒泡法排序,两两比较,开始排序。将单极最值放在最(左)右端,然后循环剩下的元素。
class BubbleSort():
    def sort_w(self,nums):
        for i in range(len(nums)-1):#i,j都是下角标序号;这里减一根本原因是作相邻交换时,数间个数总是比元素少一个
                                     #这里用i来表示总循环次数
                                    #j用来表示剩余循环次数
            for j in range(len(nums)-i-1):#
                print("j=%d"%j,end="   ")
                if nums[j]<nums[j+1]:
                    nums[j],nums[j+1]=nums[j+1],nums[j]
        return nums

另外,在python中,列表中的两个元素交换是不需要第三给变量了做容器的,直接用:

nums[j],nums[j+1]=nums[j+1],nums[j]

这样就可以实现。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!