数组逆置
Posted 呵呵静
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组逆置相关的知识,希望对你有一定的参考价值。
1 public class Reverse {
2
3 /**
4 * 逆置函数
5 *
6 * @param array
7 * 需要逆置的数组
8 * @return 逆置后的数组
9 */
10 public int[] reverse(int[] array) {
11 int size = array.length;
12 for (int i = 0; i < size / 2; i++) {
13 /* array[size - 1 - i]:下标为i值的对称下标的值 */
14 array[i] = array[i] + array[size - 1 - i];
15 /*
16 * 该句效果:array[size - 1 - i] = array[i] + array[size - 1 - i] -array[size - 1 - i]
17 */
18 /* 即:array[size - 1 - i] = array[i] 下标为i的值变为i的对称下标的值 */
19 array[size - 1 - i] = array[i] - array[size - 1 - i];
20 /* 同理 */
21 array[i] = array[i] - array[size - 1 - i];
22 }
23 return array;
24 }
25
26 public static void main(String[] args) {
27 int[] array = { 0, 1, 2, 3, 4, 5 };
28 Reverse r = new Reverse();
29 int[] a = r.reverse(array);
30
31 /* 输出数组每一个值 */
32 // System.out.print("逆置后的数组为:");
33 // for (int i = 0; i < a.length; i++) {
34 // System.out.print(" " + a[i]);
35 // }
36 System.out.println("逆置后的数组为:" + Arrays.toString(a));
37 }
38
39 }
输出结果:
逆置后的数组为:[5, 4, 3, 2, 1, 0]
分析:见代码注释
以上是关于数组逆置的主要内容,如果未能解决你的问题,请参考以下文章