JavaSE第一阶段总结冒泡排序

来源:互联网 发布:js定时执行 编辑:程序博客网 时间:2024/06/05 16:27

Java中的排序方法之冒泡排序

Java中有着八大排序:
日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、归并排序等。个人写一下Java中经常遇到和提到的两种排序,冒泡排序和选择排序,做个总结和理解。

1.冒泡排序
冒泡排序的概念:顾名思义,冒泡排序就是指较大的数往下沉,较小的数往上冒,排序之后最大的数就在最后面,最小的就在最前面。
冒泡排序的方法:每两个相邻的数相互比较,如果是较小的,就往前冒,如果是较大的,就往下沉,一直到比较完成为止。

如下图,两两相比,大的数值往后移,直到所有的数比较完了为止;

下面是冒泡程序的一个例子:

class Maopao2{    public static void main(String[] args)    {        int[] arr = {7,1,9,8,5,4,6};        for(int a=0; a<arr.length-1; a++)//length-1是因为数组的最后一个值没有必要去比较        {            for(int b=0; b<arr.length-a-1; b++)//length-x是因为每进入一次比较的时候,就会相应的减少一个值,-1是为了避免角标越界            {                if(arr[b]>arr[b+1])//定义一个第三方变量,用来交换两个比较后得到的值                {                    int temp = arr[b];                    arr[b] = arr[b+1];                    arr[b+1] = temp;                }            }        }        for(int a = 0; a<arr.length;a++)        {            System.out.print(arr[a] + " ");        }    }}

得到的结果就是一个比较大小的按顺序从小到大的一个值。
问题总结: 由于对冒泡的讲解,对冒泡了解的更加的深刻,但是Java八大排序了解的并不多,以后再做了解。

0 0
原创粉丝点击