欢迎访问宙启技术站
智能推送

数组操作-实现翻转数组的Java函数

发布时间:2023-10-08 11:22:44

翻转数组是指将数组的元素顺序反转。在Java中,可以通过以下方式实现翻转数组的函数:

1. 使用两个指针,分别指向数组的头部和尾部。使用一个临时变量来交换两个指针指向的元素,然后分别移动指针向中间靠拢,直到两个指针相遇。代码如下:

public static void reverseArray(int[] array) {
    int left = 0;
    int right = array.length - 1;

    while (left < right) {
        int temp = array[left];
        array[left] = array[right];
        array[right] = temp;

        left++;
        right--;
    }
}

2. 使用一个辅助数组,将原数组的元素从尾部开始依次放入辅助数组的头部。然后将辅助数组的元素复制回原数组。代码如下:

public static void reverseArray(int[] array) {
    int[] reversedArray = new int[array.length];

    for (int i = 0; i < array.length; i++) {
        reversedArray[array.length - 1 - i] = array[i];
    }

    for (int i = 0; i < array.length; i++) {
        array[i] = reversedArray[i];
    }
}

以上两种方法都可以实现数组的翻转,可以根据实际需求选择适合的方法。值得注意的是,这两种方法都是原地翻转,即在翻转过程中不需要使用额外的空间。翻转数组的时间复杂度为O(n),其中n为数组的长度。