Java实现数组元素逆序排列:将a[m+n]变换为xm...x1yn...y1

本文介绍如何使用Java语言将数组a[m+n]变换为xm, xm-1, ..., x1, yn, yn-1, ..., y1的格式,并提供详细的代码示例和解释。

public class ArrayTransformation {
    public static void main(String[] args) {
        int m = 3; // 前面m个元素的个数
        int n = 4; // 后面n个元素的个数

        int[] a = new int[m + n]; // 原始数组a[m+n]
        int[] b = new int[m + n]; // 变换后的数组b[m+n]

        // 假设原始数组a[m+n]的元素已经初始化
        // 可以根据实际情况赋值,这里仅作示范
        // 前m个元素为x1, x2, ..., xm
        for (int i = 0; i < m; i++) {
            a[i] = i + 1; // 示例:赋值为1, 2, ..., m
        }

        // 后n个元素为y1, y2, ..., yn
        for (int i = m; i < m + n; i++) {
            a[i] = i - m + 1; // 示例:赋值为1, 2, ..., n
        }

        // 将数组a[m+n]变换为xm, xm-1, ..., x1, yn, yn-1, ..., y1
        int index = 0;
        for (int i = m - 1; i >= 0; i--) {
            b[index++] = a[i]; // 添加前m个元素到数组b中,逆序添加
        }
        for (int i = m + n - 1; i >= m; i--) {
            b[index++] = a[i]; // 添加后n个元素到数组b中,逆序添加
        }

        // 输出数组b,即为变换后的数组
        System.out.print('变换后的数组为:');
        for (int i = 0; i < m + n; i++) {
            System.out.print(b[i] + ' ');
        }
    }
}

代码解释:

  1. 首先,我们定义了两个整数变量 mn,分别表示数组 a 中前 m 个元素和后 n 个元素的个数。
  2. 然后,我们创建了两个数组 ab,分别用于存储原始数组和变换后的数组。
  3. 接下来,我们使用两个循环分别为数组 a 的前 m 个元素和后 n 个元素赋值。
  4. 然后,我们使用两个循环将数组 a 中的元素逆序添加到数组 b 中。
  5. 最后,我们使用一个循环输出数组 b 中的所有元素。

示例:

假设 m=3n=4,且数组 a 的初始值为 [1, 2, 3, 1, 2, 3, 4],则程序输出结果为:

变换后的数组为:3 2 1 4 3 2 1 
Java实现数组元素逆序排列:将a[m+n]变换为xm...x1yn...y1

原文地址: https://www.cveoy.top/t/topic/bZFJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录