hello呀!各位,这里是Sunlightʊə。
目前大三,主要在学习Java语言。可以一起交流呀!
相关文章:
专栏:

目录
在学习选择排序的时候,我们提到:选择排序和冒泡排序十分相似。那么下面我们来了解一下什么是冒泡排序。
关于冒泡排序,在大家学习C语言阶段时,一定进行过很多次练习吧。那么下面我们就来看一下,在Java中冒泡排序如何来写。
冒泡排序:是一种简单直观的排序算法。
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
1.首先,比较相邻的元素。
2.如果第一个比第二个大,就交换他们两个。
3.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。最后的元素应该会是最大的数。
4.针对所有的元素重复以上的步骤,除了最后一个。
5.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
其中,绿色代表当前正在比较的两个元素,橙色代表已排序好的序列。
如果还不理解,那么我们再来看一组图吧!


- public static void bubbleSort(int[] array){
- int count=0;
- for(int i=0;i
1;i++){//控制比较轮次,一共 n-1 趟 - for(int j=0;j
1-i;j++){//控制两个挨着的元素进行比较 - if(array[j] > array[j+1]){
- int temp = array[j];
- array[j] = array[j+1];
- array[j+1] = temp;
- }
- }
- }
- }
| 排序方法 | 最好时间复杂度 | 平均时间复杂度 | 最坏时间复杂度 | 空间复杂度 | 稳定性 |
| 冒泡排序 | O(N) | O(N^2) | O(N^2) | O(1) | 稳定 |
今天的内容到此为止,请期待下一篇内容吧!如果觉得讲的不错的话,可不可以给一波关注呐?当然,如果你觉得以上所讲内容有漏洞的话,欢迎补充哦~