冒泡排序
Posted yushaolin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冒泡排序相关的知识,希望对你有一定的参考价值。
冒泡排序的实现
算法描述:
i
从0开始,i
与i+1
比较,如果i>i+1
,那么就互换i
不断增加,直到i<n-1
(n是数组元素的个数,n-1
是数组已经最后一个元素) ,一趟下来,可以让数组元素中最大值排在数组的最后面。public static int[] ArraySort(int[] num){ int count;
//外层循环是排序的趟数 for (int i = 0; i < num.length-1; i++) { count=0;
//内层循环是当前趟数需要比较的次数 for(int j=0;j<num.length-i-1;j++){
//前一位与后一位与前一位比较,如果前一位比后一位要大,那么交换 if(num[j]>num[j+1]){ int temp=num[j+1]; num[j+1]=num[j]; num[j]=temp;
//如果进到这里面了,说明发生置换了 count=1; } }
//如果比较完一趟没有发生置换,那么说明已经排好序了,不需要再执行下去了 if (count==0) { break; } } return num; } public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入一组数:"); int[] num=new int[5]; for(int i=0;i<num.length;i++){ num[i]=scanner.nextInt(); } System.out.println("排序前:"+Arrays.toString(num)); System.out.println("排序后:"+Arrays.toString(ArraySort(num))); }
以上是关于冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章