题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
代码如下:
public class Test { public static void main(String[] args) { int[] arr = new int[] { 2, 9, 1, 5, 4, 7 }; exchangeElement(arr); showArray(arr); } /** * 6.(算法) 题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。 */ public static void exchangeElement(int[] arr) { int max = 0; int min = 0; int len = arr.length; for (int i = 1; i < len; i++) { if (arr[i] > arr[max]) { max = i; } if (arr[i] < arr[min]) { min = i; } } if (max != 0) { int tmp = arr[0]; arr[0] = arr[max]; arr[max] = tmp; } if (min != len - 1) { int tmp = arr[len - 1]; arr[len - 1] = arr[min]; arr[min] = tmp; } } public static void showArray(int[] arr) { int len = arr.length; for (int i = 0; i < len; i++) { System.out.print(arr[i] + " "); } System.out.println(); } }
交换前:2, 9, 1, 5, 4, 7
交换后: