1. 程式人生 > >數組中的常用算法

數組中的常用算法

pri print color ron void 均值 sum rgs min

public static void main(String[] args) {
        int[] arr = new int[] { 12, 43, 9, 0, -65, -99, 100, 9 };

        // 最大值
        int max = arr[0];
        for (int i = 1; i < arr.length; i++) {
            if (max < arr[i]) {
                max = arr[i];
            }
        }
        System.out.println(
"數組的最大值為:" + max); // 最小值 int min = arr[0]; for (int i = 1; i < arr.length; i++) { if (min > arr[i]) { min = arr[i]; } } System.out.println("數組的最小值為:" + min); // 總和 int sum = 0; for (int i = 0; i < arr.length; i++) { sum
+= arr[i]; } System.out.println("總和為:" + sum); // 平均數 int avg = 0; avg = sum / arr.length; System.out.println("平均值為:" + avg); // 數組的復制 int[] arr1 = new int[arr.length]; for (int i = 0; i < arr1.length; i++) { arr1[i] = arr[i]; }
// 數組元素的反轉 // for(int i = 0;i < arr.length/2;i++){ // int temp = arr[i]; // arr[i] = arr[arr.length-1 - i]; // arr[arr.length - 1 - i] = temp; // } for (int x = 0, y = arr.length - 1; x < y; x++, y--) { int temp = arr[x]; arr[x] = arr[y]; arr[y] = temp; } System.out.println("反轉以後:"); // 遍歷 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + "\t"); } // // 使用冒泡排序使數組元素從小到大排列 // 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; // } // } // } // //使用直接選擇排序使數組元素從小到大排列 // for(int i = 0; i < arr.length - 1; i++){ // int t = i;//默認i處是最小的 // for(int j = i;j < arr.length;j++){ // //一旦在i後發現存在比其小的元素,就記錄那個元素的下角標 // if(arr[t] > arr[j]){ // t = j; // } // } // if(t != i){ // int temp = arr[t]; // arr[t] = arr[i]; // arr[i] = temp; // } // } Arrays.sort(arr); System.out.println("排序以後:"); // 遍歷 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + "\t"); } }

數組中的常用算法