reversing the array in c++

Run Settings
LanguageC++
Language Version
Run Command
/* An In-place algorithm is an algorithm that does not need an extra space and produces an output in the same memory that contains the data by transforming the input ‘in-place’. However, a small constant extra space used for variables is allowed. In-place means that the algorithm does not use extra space for manipulating the input but may require a small though nonconstant extra space for its operation. Usually, this space is O(log n), though sometimes anything in o(n) (Smaller than linear) is allowed Reversing an array in-place and not in-place */ /*1st method (not in-place)*/ #include <iostream> #include <array> using namespace std; void reverse_nip(int* arr,int n); void reverse_ip(int* arr,int n); int main() { int arr[5] = {11,22,13,4,1}; int n = sizeof(arr)/sizeof(arr[0]); reverse_nip(arr,n); cout << "After reversing the array is: \n"; for(int i=0; i<n; ++i){ cout << arr[i] << "\t"; } return 0; } void reverse_nip(int* arr, int n){ int rev[n]; for(int i=0; i<n; ++i){ rev[i] = arr[n-i-1]; } for(int i=0; i<n; ++i){ arr[i] = rev[i]; } return; } void reverse_ip(int* arr, int n){ for(int i=0; i<n/2; ++i){ swap(arr[i],arr[n-i-1]); } return; }
Editor Settings
Theme
Key bindings
Full width
Lines