zoukankan      html  css  js  c++  java
  • 使用冒泡法排序数组

    使用冒泡法排序数组:

    如果一个数组中的元素是杂乱无序的,而我们又希望将数组中的元素变为有序的,比如变为升序排列的,这样我们需要一种算法来实现数组元素的排序,其中冒泡法就是一种常用的排序方法。

    1.冒泡排序法的原理:

          升序排列步骤如下:

    1)对于一个有n个元素的数组,首先用数组中的第一个元素和后面的每个元素进行比较,如果第一个元素比后面的元素大,就交换这两个元素的位置,直到比较到最后一个元素为止,这样经过第一轮的比较,可以保证第一个元素是最小的;

    2)用数组中的第二个元素和后面的每个元素进行比较,如果第二个元素比后面的元素大,就交换这两个元素的位置,直到比较到最后一个元素为止,这样经过第二轮的比较,可以保证第二个元素比第一个元素以外的其他元素都小;

    3)重复(1)、(2)两个步骤,直到比较到第n-1轮,比较出第n-1个元素和第n个元素的大小,使第n-1个元素小于第n个元素,这样就实现了数组的升序排列。

    升序排列数组的冒泡法的代码:

    int[] num={10,5,20,18,30,12,25};

    // 使用冒泡法排序数组

    for (int i=0;i<num.length-1;i++){

            for (int j=i+1;j<num.length;j++){

                    if (num[i]>num[j]){

                            int x=num[i];

                            num[i]=num[j];

                            num[j]=x;

                    }

            }

    }

    升序排列的结果:5  10  12  18  20  25  30

          降序排列步骤如下:

    1)对于一个有n个元素的数组,首先用数组中的第一个元素和后面的每个元素进行比较,如果第一个元素比后面的元素小,就交换这两个元素的位置,直到比较到最后一个元素为止,这样经过第一轮的比较,可以保证第一个元素是最大的;

    2)用数组中的第二个元素和后面的每个元素进行比较,如果第二个元素比后面的元素小,就交换这两个元素的位置,直到比较到最后一个元素为止,这样经过第二轮的比较,可以保证第二个元素比第一个元素以外的其他元素都大;

    3)重复(1)、(2)两个步骤,直到比较到第n-1轮,比较出第n-1个元素和第n个元素的大小,使第n-1个元素大于第n个元素,这样就实现了数组的降序排列。

    降序排列数组的冒泡法的代码:

    int[] num={10,5,20,18,30,12,25};

    // 使用冒泡法排序数组

    for (int i=0;i<num.length-1;i++){

            for (int j=i+1;j<num.length;j++){

                    if (num[i]<num[j]){

                            int x=num[i];

                            num[i]=num[j];

                            num[j]=x;

                    }

            }

    }





  • 相关阅读:
    Linux
    Monkey命令
    ADB命令
    DOS命令
    列表
    函数
    文件读写及实操项目
    Selenium2自动化——初体验
    新开淘宝店怎么提升信誉,是不是真的要刷钻?
    JSFL:导入根文件夹将所有图片添加库链接导出swf
  • 原文地址:https://www.cnblogs.com/xe2011/p/2518930.html
Copyright © 2011-2022 走看看