How to Reverse a String in Place in C++?
Last Updated :
13 Feb, 2024
In C++, reversing a string is a basic operation in programming that is required in various applications, from simple and complex algorithms. Reversing a string in place involves changing the characters of the string directly without using input-dependent additional storage. In this article, we learn how to reverse a string in place in C++.
For Example,
Input:
myString = "Hello, World!"
Output:
myString = "!dlroW ,olleH"
Reverse a String In-Place in C++
The std::reverse() function provided by the C++ STL library can be used to reverse the string in place. This function takes the iterator to the beginning and the end of the string.
Syntax of std::reverse()
std::reverse(begin, end)
The begin and end can be either an iterator or a pointer.
C++ Program to Reverse a String In-Place
C++
#include <algorithm>
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str = "Hello, World!" ;
reverse(str.begin(), str.end());
cout << "Reversed string is: " << str << endl;
return 0;
}
|
Output
Reversed string is: !dlroW ,olleH
Time Complexity: O(n)
Auxiliary Space: O(1)
Note: In an in-place algorithm, additional space can be used as long as it is not dependent on the input.
Share your thoughts in the comments
Please Login to comment...