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 }      
    乾坤未定,你我皆是黑马
  • 相关阅读:
    arcEngine classic code(2)
    VisualGraph文档
    基于.net2 的CAD 绘图控件virtualGraph(2)
    沈阳三维GIS软件开发人员
    arcEngine + .net 2 AccessViolationException
    数据库事务并发带来的问题
    理解 WPF Dispatcher
    扇入与扇出
    IComparable 与 IComparer
    同步、异步、多线程
  • 原文地址:https://www.cnblogs.com/liuqijia/p/11416453.html
Copyright © 2011-2022 走看看