zoukankan      html  css  js  c++  java
  • 冒泡排序

    摘要:  关于冒泡排序的思路和算法

    所谓冒泡排序就是给定一组数,针对这组数进行的一种排序。具体的过程是,从第一个数开始,依次与后面的数进行比较,若 前一个数比后一个数大,则交换位置,再与第三个数进行比较,最后出现在结尾的就是本轮最大数字,再次重复直到排除顺序,这是选出最大来进行排列,也可以按选出最小来排,原理是一样的。

    比如:

     

    用第一个数依次与后面的数比较,比对方大,就交换位置,比对方小就不动,并放弃当前数字,用对方来与后面的数字继续比较,为的就是一次又一次的选出最大的数字。

      比较过程大致:

    1、比较相邻的元素。如果第一个比第二个大(小),就交换他们两个。

    2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大(小)的数。

    3、针对所有的元素重复以上的步骤,除了最后已经选出的元素(有序)。


    4、持续每次对越来越少的元素(无序元素)重复上面的步骤,直到没有任何一对数字需要比较,则序列最终有序。

     1 具体实现代码:
     2 public static void main(args[]){
     3     for(int i=0;i<arr.length;i++){//外层循环控制轮数
     4          for(int j=0;i<arr.length-1-i;j++){//内层循环控制比较次数
     5               if(arr[j]>arr[j+1]){
     6                    int  temp=arr[j];
     7                    arr[j]=arr[j+1];
     8                    arr[j+1]=temp;
     9             }  
    10         }
    11     }  
    12 }      
    乾坤未定,你我皆是黑马
  • 相关阅读:
    素因子分解
    【转载】一张表看懂LTE和5G NR的区别
    看国家宝藏,顺便学习一下国密算法
    LTE-Advanced(4G)主要技术学习:CA、CoMp、HetNet
    未来移动通信的需求与挑战
    傅里叶级数
    正余弦函数的复指数表示
    网络基础——相关面试考点
    操作系统——相关面试考点
    小米2015笔试编程题
  • 原文地址:https://www.cnblogs.com/liuqijia/p/11416453.html
Copyright © 2011-2022 走看看