冒泡排序
工作原理: 重复的访问要排序的序列,一次比较两个元素,如果他们的顺序错误就把它们交换过来,重 复进行访问,直到排序完成,越小的元素会经过不停的交换慢慢浮到序列的最上层。 即每轮循环把最大的数放在最后,与选择排序的区别,无需记录最大数的位置,一边比较一边交换位置。
Java代码如下:

输出结果:

时间复杂度
冒泡N-1轮,每轮最长N-1次,最短1次,总共(N-1)+(N-2)+……+1:O(N^2)
,每次操作只有常数次比较和赋值,复杂度是O(N^2)。
稳定性
每次都比较相邻的元素,只有前者比后者大才交换位置,是稳定排序。
上一篇:java中的排序算法——快速排序
下一篇:java中的数据结构——堆