赞
踩
对一个数组做升序排序:
- public static void main(String[] args) {
- int[] arr={15,7,155,2,54};
- System.out.println(Arrays.toString(arr));
- bubbleSort(arr);
- System.out.println(Arrays.toString(arr));//数组转化为字符串打印出来
- }
- public static void bubbleSort(int[] arr) {
- for (int i = 0; i < arr.length; i++) {//比较的趟数
- for (int j = 0; j < arr.length-i-1; j++) {//循环进行元素的比较交换//-1是因为防止越界
- if(arr[j]>arr[j+1]){
- int tmp=arr[j];
- arr[j]=arr[j+1];
- arr[j+1]=tmp;
- }
- }
- }
- }
1.对于外循环:最后一次不需要比较,其他的都有序了,最后一个自然有序了,所以比较的趟数:for (int i = 0; i < arr.length-1; i++)
2.对于天然有序的数组集合,或者当走着走着发现某一趟没有元素交换,即arr[j]<arr[j+1],说明此时集合已经有序&#
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。