python题目,输出的是什么?流程图怎么画?

arr = [64,34,25,12,22,11,90]
n=len(arr)
for i in range(n):
for j in range(0,n-i-1):
if arr[j]>arr[j+1]:
m=arr[j]
arr[j]=arr[j+1]
arr[j+1]=m

冒泡排序(顺序形式),从左向右,两两比较,如果左边元素大于右边,就交换两个元素的位置。

其中,每一轮排序,序列中最大的元素浮动到最右面。也就是说,每一轮排序,至少确保有一个元素在正确的位置。

这样接下来的循环,就不需要考虑已经排好序的元素了,每次内层循环次数都会减一。

其中,如果有一轮循环之后,次序并没有交换,这时我们就可以停止循环,得到我们想要的有序序列了。

排序演示


代码

输出结果

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-16
冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。
作用跟.sort()和sorted()方法差不多
输出的是
[11, 12, 22, 25, 34, 64, 90]本回答被网友采纳
相似回答