public class ArrayTool {
    // 1.求最大值
    public static int getMax(int[] arr) {
        //假设数组当中的第一个元素为最大值
        int max = arr[0];
        //从数组的第二个元素开始进行遍历,相互比较,记录最大值
        for (int x = 1; x < arr.length; x++) {
            if (arr[x] > max) {
                max = arr[x];
            }
        }
        //返回数组中的最大值
        return max;
    }

    // 2.求最小值
    public static int getMin(int[] arr) {
        //假设数组当中的第一个元素为最小值
        int min = arr[0];
        //从数组的第二个元素开始进行遍历,相互比较,记录最小值
        for (int x = 1; x < arr.length; x++) {
            if (arr[x] < min) {
                min = arr[x];
            }
        }
        //返回数组中的最小值
        return min;
    }

    // 3.遍历输出数组
    public static void printArray(int[] arr) {
        // 循环遍历数组的元素
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " "); // 打印元素和空格
        }
        System.out.print("\n");
    }

    // 4.冒泡排序
    public static void bubbleSort(int[] arr) {
        // 定义外层循环
        for (int i = 0; i < arr.length - 1; i++) {
            // 定义内层循环
            for (int j = 0; j < arr.length - i - 1; j++) {
                if (arr[j] > arr[j + 1]) { // 比较相邻元素
                // 下面的三行代码用于交换两个元素
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }

    }

    // 5.选择排序
    public static void selectSort(int[] arr) {
        // 定义外层循环
        for (int i = 0; i < arr.length - 1; i++) {
            int min = i;
            // 定义内层循环
            for (int j = i + 1; j < arr.length; j++) {
                if (arr[j] < arr[min]) {
                    min = j;
                }
            }
            if (min != i) {
                int temp = arr[min];
                arr[min] = arr[i];
                arr[i] = temp;
            }
        }
    }
}

 

 
posted on 2022-03-23 21:38  ^十月  阅读(72)  评论(0)    收藏  举报