(0, n-1-1-1)
—> range(0, n-1-j)理解这一点后,我们就可以换一种写法来实现了
defbubble_sort2(arr):for j inrange(len(arr)-1,0,...count,如果第一次循环后count没有变化,就说明输入的是有序序列,这时我们直接return退出循环,这时候的时间复杂度为O(n)
扩展知识:冒泡排序还是一种稳定性的算法,如果序列中出现两个相同的值的时候...持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
所以可以看出,你代码仅仅比较了一次相邻的两个,而没有继续往后比较,输出的第三行开始出现问题。...是1里面的代码循环直到把fish_records里最大的数排在最后一位然后再运行2吗?也就…
(不知道有没有人知道我想表达的问题,我说不清楚,解决了问题我采纳回答) 想知道图中代码运行顺序。...是1里面的代码循环直到把fish_records里最大的数排在最后一位然后再运行2吗?也就是[8,7,2,3,6,1,1,18]。。。为什么1里不是[8,18,7,2,3,6,1,1]再运行2 ?