Java经典编程题50道之三十六

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java经典编程题50道之三十六相关的知识,希望对你有一定的参考价值。

有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。

public class Example36 {
    public static void main(String[] args) {
        int[] m = { 18, 12, 23, 34, 95, 76, 57, 28, 9 };
        moveElement(m, 5);
    }

    public static void moveElement(int[] m, int n) {
        System.out.print("移位前的数组为:");
        for (int r : m) {
            System.out.print(r + " ");
        }

        if (n <= m.length) {
            int[] b = new int[m.length];
            for (int i = 0; i < m.length - n; i++) {
                b[i + n] = m[i];
            }
            int j = 0;
            for (int i = m.length - n; i < m.length; i++) {
                b[j] = m[i];
                j++;
            }

            System.out.print("\n移动" + n + "位后的数组为:");
            for (int r : b) {
                System.out.print(r + " ");
            }
        } else {
            System.out.print("\n移动错误!");
        }
    }
}

以上是关于Java经典编程题50道之三十六的主要内容,如果未能解决你的问题,请参考以下文章

Java经典编程题50道之三十四

Java经典编程题50道之三十二

Java经典编程题50道之三十

Java经典编程题50道之三十九

Java经典编程题50道之三十五

Java经典编程题50道之三十八