1. 程式人生 > >陣列的延伸(資料刪除、倒序排列)

陣列的延伸(資料刪除、倒序排列)

任務:刪除陣列中的“0”,並進行倒序排列。 package lesson_arr; public class Test{ public static void main(String[] args) { int oldArr[]  = {1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5}; selSort(oldArr); } //構建刪除方法 public static void selSort(int[] arr){ int j = 0; for(int i = 0;i < arr.length;i++){ if(arr[i] ==0) {//判斷是否為0 j++; } } int k = 0; int[] newArr = new int[arr.length-j];//建立新陣列 for (int i = 0; i < arr.length; i++) { if (arr[i] !=0) {//不為0時,生成新陣列 newArr[k] = arr[i]; k++; } } System.out.print("生成的新陣列為:"); listArr(newArr);//生成陣列 getSort(newArr);//排序後列印 } //氣泡排序逆用法
public static void getSort(int[] arr){ for(int i = 0;i < arr.length-1;i++){ for(int j = 0;j < arr.length-1-i;j++){ if(arr[j] < arr[j+1]){ int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } System.out.print("轉置後結果為:"); listArr(arr);//生成陣列 System.out.println(); } //遍歷陣列 public static void listArr(int[] arr){ for(int num:arr){ System.out.print(num+" "); } } }