数组排序之冒泡排序
package com.book.lite;/*** @author zhangyu* @date 2021年08月11日 10:51 下午* 實(shí)現(xiàn)整數(shù)數(shù)組的排序,順序排序,冒泡排序*/
public class arrDome {public static void main(String[] a){int[] arr = {2,0,9,8,67,-45,-199};
// smallNumber(arr);
// printArr(arr);smallNumber_1(arr);printArr(arr);}/*** @author zhangyu* @date 2021/8/11 11:14 下午* @param arr* 定義一個(gè)可以排序的功能,實(shí)現(xiàn)從小到大排序* 實(shí)現(xiàn)原理:嵌套循環(huán)* x=0* y=1,2,3* x=1* y=2,3*/public static void smallNumber(int[] arr){for (int x = 0;x<arr.length;x++){for(int y = x+1;y<arr.length;y++){if (arr[x]>arr[y]){int temp = arr[y];arr[y] = arr[x];arr[x] = temp;}}}}/*** @author zhangyu* @date 2021/8/11 11:42 下午* @param arr* 使用冒泡排序?qū)崿F(xiàn)排序* 實(shí)現(xiàn)原理:重點(diǎn)在與內(nèi)循環(huán)的y變量的結(jié)尾取值,不能越界異常,也減少比的次數(shù),當(dāng)最大值誕生后,第二輪沒必要與最大值比較* 第一輪---* arr[0] arr[1]* arr[1] arr[2]* arr[2] arr[3]** 第二輪---* arr[0] arr[1]* arr[1] arr[2]** 第三輪---* arr[0] arr[1]*/public static void smallNumber_1(int[] arr){for (int x = 0;x< arr.length;x++){for (int y =0 ; y< arr.length-1-x;y++){if (arr[y] > arr[y+1]){int temp = arr[y+1];arr[y+1] = arr[y];arr[y] = temp;}}}}/*** @author zhangyu* @date 2021/8/11 11:16 下午* @param arr* 定義功能實(shí)現(xiàn):輸出數(shù)組**/public static void printArr(int[] arr){System.out.print("[");for (int x=0;x<arr.length;x++){if(x == arr.length-1){System.out.print(arr[x]);}else{System.out.print(arr[x]+",");}}System.out.print("]");}
}
總結(jié)
- 上一篇: createbitmap导致的内存泄漏如
- 下一篇: 基于WF4的新平台-流程格式转换架构