//數組工具類(Arrays):java.util 排序(選擇排序) sort int [] i = Arrays.sort(數組);升序 二分查找法 binarySearch int i = Arrays.binarySearch(數組,要查詢的數);//找到返回所在的數組的索引值,找不到則返回負數 遍歷數組 String num = Arrays.toString(arr); //直接排序(選擇排序)降序 for(int i = 0;i<arr.length-1;i++){ for(int j = i+1;j<arr.length;j++){ if(arr[i]<arr[j]){ int temp = arr[i]; arr[i] = arr [j]; arr[j] = temp; } } } //冒泡排序 升序 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; } } }
二分查找法 (在排好順序的數組上進行查找數據) int arr [] = new int [5]; int min = 0; int max = arr.length - 1; int mid = (min + max)/2; //tager是要查找的數 while(true){ if(tager > mid){ min = mid + 1; }else if(tager < mid){ max = mid -1; }else{ return mid; } if(min > max){ return -1; } mid = (max + min )/2; }