Reverse Order Array in CPP
In this c++ tutorial, we are going to discuss how to print an array in reverse order in O(n) time complexity and without using any temporary array. Let’s reverse an array in C++ without using any second array.
Print Array in Reverse Order in C++ without using another array
How to swap two values using a temporary variable
Suppose, we have to swap the value of variables a and b, as we directly can’t give the value of a to b and b to a.
So, we will use a third variable temp to swap value.
int temp;
temp=a; // temp will take the value of “a”, so “a” now become free
a=b; // “a” will now take the value “b”, so “b” now become free
b=temp; // “b” will take the value temp which was initial value “b”
So, “b” has now the value of “a” and “a” has value of “b”.
Algorithm to reverse an array in C++
- Take an array arr[] of size n.
- For each index in array arr[] till half swap the value of the element at index i with n-i-1, like swapping the value of the first element with last element, second with second last.
- Proceeding the above step till half the size of arr[] we will get final array in reverse order.
C++ code: printing an array in reverse order
#include<bits/stdc++.h>
using namespace std;
void reverse(int arr[], int n)
{
int i,temp;
for(i=0;i<n/2;i++)
{
temp=arr[i];
arr[i]=arr[n-i-1];
arr[n-i-1]=temp;
}
}
int main()
{
int n,i;
cin>>n;
int arr[n];
for(i=0;i<n;i++)
cin>>arr[i];
reverse(arr,n);
for(i=0;i<n;i++)
cout<<arr[i]<<" ";
}
Example:
INPUT
1 2 3 4 5
OUTPUT
5 4 3 2 1
Learn more tutorials,
Leave a Reply