Java常用的数组排序

来源:互联网 发布:104cm肛塞淘宝 编辑:程序博客网 时间:2024/04/25 08:27


从今天起就准备计算机二级考试了,每天学点java,一次过啊!!!

1.冒泡排序法


public class Bubble {public static void main(String[] args) {// TODO Auto-generated method stubint [] array= {1,5,4,3};//进行下称的轮数     比数组的个数少1for(int i =0;i<array.length;i++){//每一轮比较的次数为array.length-1-ifor(int j =0;j<array.length-1-i;j++){if(array[j]>array[j+1]){int temp = array[j];array[j] = array[j+1];array[j+1] = temp; }}}/*int x = 0;while(x<array.length){System.out.print("    "+array[x]);}*/for(int i = 0;i<array.length;i++){System.out.print("    "+array[i]);}}}



2.选择排序法



class  Select{public static void main(String[] args) {int[] array = {10,8,20,5};int min = 0;//保存最小元素的下标//查找最小数的下标for(int i = 0;i<array.length-1;i++){min = i;for(int j=i+1;j<array.length;j++){//如果当前这个最小值要比比较的这个当前下标的这个元素小,那么就交换下标值if(array[min]>array[j]){min = j;}}//除自己和自己的进行比较时才进行交换if(i!=min){int tem = array[i];array[i] = array[min];array[min] = tem;}}for(int i =0;i<array.length;i++){System.out.print("   "+array[i]);}}}


3.插入排序法




class Insert {public static void main(String[] args) {int[] array = {20,45,7,65};for(int i=1;i<array.length;i++){int temp = array[i];int j = i;while(j>0&&temp<array[j-1]){array[j] = array[j-1];j--;}array[j] = temp;}for(int i = 0;i<array.length;i++){System.out.print("  "+array[i]);}}}




上边的如果不理解也没关系,在Arrays类里面就有排序的方法直接调用就行。我只是为了弄清排序的原理方法。
0 0