首页 > 代码库 > 数组逆置
数组逆置
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]
分析:见代码注释
数组逆置
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。