已知一个数组 arr = {19, 28, 37, 46, 50}; 用程序实现把数组中的元素值交换,
交换后的数组 arr = {50, 46, 37, 28, 19}; 并在控制台输出交换后的数组元素。
方法一:
public class SwapDemo1 {
public static void main(String[] args) {
//给一个数组容器
int[] arr = {19, 28, 37, 46, 50};
swap(arr);
//遍历数组
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
public static void swap(int[] arr) {
/*
第一个元素 0,最后一个元素 length-1-0 length-1-i
第二个元素 1,倒数第二个元素 length-1-1
第三个元素 2,倒数第三个元素 length-1-2
...
交换次数:
数组长度5,交换次数2 5/2 arr.length/2
数组长度6,交换次数3 6/2
数组长度7,交换次数3 7/2
*/
//交换次数
int count = arr.length / 2;
System.out.println("交换次数"+count);
for (int i = 0; i < count; i++) {
//定义一个中间变量,用于交换
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
}
}