简单排序算法之冒泡排序

家住魔仙堡 提交于 2019-12-04 06:48:53

冒泡排序

①基本思想:两个数比较大小,较大的数下沉,较小的数冒起来。

②算法描述:

  1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 
  2. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
  3. 针对所有的元素重复以上的步骤,除了最后一个。
  4. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

③动图演示(来源参考资料)

 

 ④代码实现

 1 public class maoPaoDemo{
 2     public static void main(String[] args){
 3         int[] arr = {12,5,7,9,10,70,56,2,105,6};
 4         for(int i=0;i<arr.length-1;i++){
 5             for(int j=0;j<arr.length-i-1;j++){
 6                 if(arr[j]>arr[j+1]){
 7                     int temp=0;
 8                     temp=arr[j];
 9                     arr[j]=arr[j+1];
10                     arr[j+1]=temp;
11                 }
12             }
13         }
14         for(int i=0;i<arr.length;i++){
15           System.out.print(arr[i]+" ");
16         }
17     }
18 }

 

参考资料:

https://www.toutiao.com/a6593273307280179715/?iid=6593273307280179715

https://baike.baidu.com/item/%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F/4602306?fr=aladdin

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