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.
#include <iostream>
#include <utility>
using namespace std;
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,
Last Updated :
14 Sep, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...