How to quickly swap two arrays of same size in C++?
Given two arrays a[] and b[] of same size, we need to swap their contents.
Example :
Input : a[] = {1, 2, 3, 4} b[] = {5, 6, 7, 8} Output : a[] = {5, 6, 7, 8} b[] = {1, 2, 3, 4}
A simple solution is to iterate over elements of both arrays and swap them one by one.
A quick solution is to use std::swap(). It can directly swap arrays if they are of same size.
// Illustrating the use of swap function // to swap two arrays #include <iostream> #include <utility> using namespace std; // Driver Program int main () { int a[] = {1, 2, 3, 4}; int b[] = {5, 6, 7, 8}; int n = sizeof (a)/ sizeof (a[0]); swap(a, b); cout << "a[] = " ; for ( int i=0; i<n; i++) cout << a[i] << ", " ; cout << "\nb[] = " ; for ( int i=0; i<n; i++) cout << b[i] << ", " ; return 0; } |
Output :
a[] = 5, 6, 7, 8, b[] = 1, 2, 3, 4,
Contact Us