- class TestDemo
- {
- public static void main(String[] args)
- {
- int[] arr = {100, 29, 10, 20, 40, 38, 39};
-
- int min = getArrMin(arr);
- int max = getArrMax(arr);
- System.out.println("min = "+min+", max = "+max);
- printArr(arr);
- int[] xuanze = xuanze(arr);
- int[] maopao = maopao(arr);
- printArr(xuanze);
- printArr(maopao);
- }
- //一个数组获取最大值
- static int getArrMax(int[] arr)
- {
- int max = 0;
- for (int i = 1; i < arr.length; i++)
- {
- if (arr[max] < arr[i] )
- {
- max = i;
- }
- }
- return arr[max];
- }
- //一个数组获取最小值
- static int getArrMin(int[] arr)
- {
- int min = 0;
- for (int i = 1; i < arr.length; i++)
- {
- if (arr[min] > arr[i])
- {
- min = i;
- }
- }
- return arr[min];
- }
- //打印数组
- static void printArr(int[] arr)
- {
- System.out.print("[");
- for (int i = 0; i < arr.length; i++)
- {
- if ( i == arr.length-1 )
- {
- System.out.println(+arr[i]+"]");
- }
- else
- System.out.print(arr[i]+", ");
- }
- }
- //选择排序,从小到大排序
- static int[] xuanze(int[] arr)
- {
- for (int i = 0; i < arr.length; i++)
- {
- for (int j = i+1; j < arr.length; j++)
- {
- if (arr[i] > arr[j])
- {
- change(arr, i, j);
-
- }
- }
- }
- return arr;
- }
- //冒泡排序,从小到大排序
- static int[] maopao(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])
- {
- change(arr, j, j+1);
- }
- }
- }
- return arr;
- }
- static void change(int[] arr, int a, int b)
- {
- int temp = arr[a];
- arr[a] = arr[b];
- arr[b] = temp;
- }
- }
复制代码 |