对十个数进行从小到大排序通过冒泡和选择排序

mac2024-10-12  54

class Demo_10 { public static void main(String[] args) { //定义并初始化一个数组 int[] arr = {34,642,2,3,90,35,23,22,0,18}; int[] arr1 = {3,56,2,39,543,90,999,22,1,666}; //对无序数组进行遍历 //调用方法 printArr(arr); //调用冒泡排序方法 bubbleSortArr(arr); //遍历排序后的数组 printArr(arr); //对无序数组进行遍历 printArr(arr1); //调用选择排序方法 sortArr(arr1); //遍历排序后的数组 printArr(arr1); } //遍历的方法 public static void printArr(int[] arr){ for(int i = 0;i<arr.length;i++){ System.out.print(arr[i]+" "); } System.out.println(); } //定义交换数组中两个数的方法 public static void swap(int[] arr,int a,int b){ int temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; } //定义冒泡排序的方法 一次循环确定一个最大值 public static void bubbleSortArr(int[] arr){ for(int i = 0;i<arr.length;i++){ //每一次确定一个最大值,所以不用每次都要比较到最后 for(int j = 0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1]){ //调用交换方法 swap(arr,j,j+1); } } } } //定义选择排序的方法 每次确定一个最小值 public static void sortArr(int[] arr){ for(int i = 0;i<arr.length;i++){ for(int j = i+1;j<arr.length;j++){ if(arr[i]>arr[j]){ //调用交换方法 swap(arr,i,j); } } } } }

 

最新回复(0)