Nos dan una string. También se nos dan índices de los primeros y últimos caracteres de la string. La tarea es invertir la string sin usar ninguna variable adicional.
Ejemplos:
C++
// C++ Program to reverse a string without // using temp variable #include <bits/stdc++.h> using namespace std; // Function to reverse string and return reversed string string reversingString(string str, int start, int end) { // Iterate loop upto start not equal to end while (start < end) { // XOR for swapping the variable str[start] ^= str[end]; str[end] ^= str[start]; str[start] ^= str[end]; ++start; --end; } return str; } // Driver Code int main() { string s = "GeeksforGeeks"; cout << reversingString(s, 0, 12); return 0; }
Java
// Java Program to reverse a string without // using temp variable import java.util.*; class GFG { // Function to reverse string and // return reversed string static String reversingString(char []str, int start, int end) { // Iterate loop upto start not equal to end while (start < end) { // XOR for swapping the variable str[start] ^= str[end]; str[end] ^= str[start]; str[start] ^= str[end]; ++start; --end; } return String.valueOf(str); } // Driver Code public static void main(String[] args) { String s = "GeeksforGeeks"; System.out.println(reversingString (s.toCharArray(), 0, 12)); } } // This code is contributed by 29AjayKumar
Python3
# Python3 Program to reverse a string # without using temp variable # Function to reverse string and # return reversed string def reversingString(str, start, end): # Iterate loop upto start not equal to end while (start < end): # XOR for swapping the variable str = (str[:start] + chr(ord(str[start]) ^ ord(str[end])) + str[start + 1:]); str = (str[:end] + chr(ord(str[start]) ^ ord(str[end])) + str[end + 1:]); str = (str[:start] + chr(ord(str[start]) ^ ord(str[end])) + str[start + 1:]); start += 1; end -= 1; return str; # Driver Code s = "GeeksforGeeks"; print(reversingString(s, 0, 12)); # This code is contributed by 29AjayKumar
C#
// C# Program to reverse a string without // using temp variable using System; class GFG { // Function to reverse string and // return reversed string static String reversingString(char []str, int start, int end) { // Iterate loop upto start // not equal to end while (start < end) { // XOR for swapping the variable str[start] ^= str[end]; str[end] ^= str[start]; str[start] ^= str[end]; ++start; --end; } return String.Join("", str); } // Driver Code public static void Main(String[] args) { String s = "GeeksforGeeks"; Console.WriteLine(reversingString (s.ToCharArray(), 0, 12)); } } // This code is contributed by 29AjayKumar
Javascript
<script> // Javascript program to reverse a string // without using temp variable // Function to reverse string and // return reversed string function reversingString(str, start, end) { // Iterate loop upto start not // equal to end while (start < end) { // XOR for swapping the variable str[start] = String.fromCharCode( str[start].charCodeAt(0) ^ str[end].charCodeAt(0)); str[end] = String.fromCharCode( str[end].charCodeAt(0) ^ str[start].charCodeAt(0)); str[start] = String.fromCharCode( str[start].charCodeAt(0) ^ str[end].charCodeAt(0)); ++start; --end; } return(str).join(""); } // Driver Code let s = "GeeksforGeeks"; document.write(reversingString( s.split(""), 0, 12)); // This code is contributed by rag2127 </script>
C++
// Reversing a string using reverse() #include<bits/stdc++.h> using namespace std; int main() { string str = "geeksforgeeks"; // Reverse str[begin..end] reverse(str.begin(), str.end()); cout << str; return 0; }
Java
// Reversing a string using reverse() class GFG { public static void main(String[] args) { StringBuilder str = new StringBuilder("geeksforgeeks"); // Reverse str[begin..end] str.reverse(); System.out.println(str); } } // This code is contributed // by PrinciRaj1992
Python3
# Reversing a string using reverse() str = "geeksforgeeks"; # Reverse str[begin..end] str = "".join(reversed(str)) print(str); # This code is contributed by 29AjayKumar
C#
// Reversing a string using reverse() using System; using System.Linq; class GFG { public static void Main(String[] args) { String str = "geeksforgeeks"; // Reverse str[begin..end] str = new string(str.Reverse().ToArray()); Console.WriteLine(str); } } // This code is contributed by 29AjayKumar
Javascript
<script> // Reversing a string using reverse() function reverseString(str) { return str.split("").reverse().join(""); } var str = ("geeksforgeeks"); document.write(reverseString(str)); // This code is contributed by todaysgaurav </script>
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA