# Reverse the given Array without using built in function

Objective: Given a array, write an algorithm to reverse the array.

Example:

```int a[] = {1, 2, 3, 4, 5}
Output: {5, 4, 3, 2, 1}
```

Approach:

• It’s obvious that you cannot use any built-in function reverse it.
• It’s a simple solution, we will solve it using recursive and non-recursive way.
• Take 2 elements at a time, one from the from start and one from the end and swap them.
• Now for recursion, Make a recursive call to rest of the string and for non-recursive solution, use the for loop and swap the elements start +1 and end +1.

Code:

 import java.util.*; public class ReverseArray { static int [] a; public static void reverseIteration(){ int start =0; int end = a.length–1; while(start<=end){ int temp = a[start]; a[start] = a[end]; a[end] = temp; start++; end—; } } public static void reverseRecursive(int start, int end){ if(start<=end){ int temp = a[start]; a[start] = a[end]; a[end] = temp; start++; end—; reverseRecursive(start, end); } } public static void main(String[] args) { a = new int []{1,2,3,4,5}; System.out.println("Original Array" + Arrays.toString(a)); reverseIteration(); System.out.println("Reversed – Array(Iteration):" + Arrays.toString(a)); reverseRecursive(0,a.length–1); System.out.println("Reversed Again – Array(Recursion):" + Arrays.toString(a)); } }

view raw
ReverseArray.java
hosted with ❤ by GitHub

Output:

```Original Array[1, 2, 3, 4, 5]
Reversed - Array(Iteration):[5, 4, 3, 2, 1]
Reversed Again - Array(Recursion):[1, 2, 3, 4, 5]
```