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八大排序了解的并不多,以后再做了解。