Skip to content
Related Articles

Related Articles

Improve Article

Replace a character c1 with c2 and c2 with c1 in a string S

  • Difficulty Level : Basic
  • Last Updated : 04 May, 2021
Geek Week

Given a string S, c1 and c2. Replace character c1 with c2 and c2 with c1. 
Examples: 
 

Input : grrksfoegrrks,
        c1 = e, c2 = r 
Output : geeksforgeeks 

Input : ratul,
        c1 = t, c2 = h 
Output : rahul

 

Traverse through the string and check for the occurrences of c1 and c2. If c1 is found then replace it with c2 and else if c2 is found replace it with c1. 
 

C++




// CPP program to replace c1 with c2
// and c2 with c1
#include <bits/stdc++.h>
using namespace std;
string replace(string s, char c1, char c2)
{
    int l = s.length();
 
    // loop to traverse in the string
    for (int i = 0; i < l; i++) {
 
        // check for c1 and replace
        if (s[i] == c1)
            s[i] = c2;
 
        // check for c2 and replace
        else if (s[i] == c2)
            s[i] = c1;
    }
    return s;
}
 
// Driver code to check the above function
int main()
{
    string s = "grrksfoegrrks";
    char c1 = 'e', c2 = 'r';
    cout << replace(s, c1, c2);
    return 0;
}

Java




// Java program to replace c1 with c2
// and c2 with c1
class GFG
{
     
static String replace(String s,
                    char c1, char c2)
{
    int l = s.length();
    char []arr = s.toCharArray();
     
    // loop to traverse in the string
    for (int i = 0; i < l; i++)
    {
     
        // check for c1 and replace
        if (arr[i] == c1)
            arr[i] = c2;
             
        // check for c2 and replace
        else if (arr[i] == c2)
            arr[i] = c1;
    }
     
    return String.valueOf(arr);
}
 
// Driver code
public static void main(String []args)
{
    String s = "grrksfoegrrks";
    char c1 = 'e', c2 = 'r';
    System.out.println(replace(s, c1, c2));
}
}
 
// This code is contributed
// by ChitraNayal

Python3




# Python3 program to replace c1 with c2
# and c2 with c1
def replace(s, c1, c2):
    l = len(s)
     
    # loop to traverse in the string
    for i in range(l):
         
        # check for c1 and replace
        if (s[i] == c1):
            s = s[0:i] + c2 + s[i + 1:]
         
        # check for c2 and replace
        elif (s[i] == c2):
            s = s[0:i] + c1 + s[i + 1:]
    return s
 
# Driver Code
if __name__ == '__main__':
    s = "grrksfoegrrks"
    c1 = 'e'
    c2 = 'r'
    print(replace(s, c1, c2))
 
# This code is contributed
# by PrinciRaj1992

C#




// C# program to replace c1 with c2
// and c2 with c1
using System;
public class GFG{
 
    static String replace(String s,
                        char c1, char c2)
    {
        int l = s.Length;
        char []arr = s.ToCharArray();
 
        // loop to traverse in the string
        for (int i = 0; i < l; i++)
        {
 
            // check for c1 and replace
            if (arr[i] == c1)
                arr[i] = c2;
                 
            // check for c2 and replace
            else if (arr[i] == c2)
                arr[i] = c1;
        }
 
        return string.Join("", arr);
    }
 
    // Driver code
    public static void Main()
    {
        String s = "grrksfoegrrks";
        char c1 = 'e', c2 = 'r';
        Console.WriteLine(replace(s, c1, c2));
    }
}
// This code is contributed by 29AjayKumar

PHP




<?php
// PHP program to replace c1
// with c2 and c2 with c1
function replace($s, $c1, $c2)
{
    $l = strlen($s);
 
    // loop to traverse
    // in the string
    for ($i = 0; $i < $l; $i++)
    {
 
        // check for c1 and replace
        if ($s[$i] == $c1)
            $s[$i] = $c2;
 
        // check for c2 and replace
        else if ($s[$i] == $c2)
            $s[$i] = $c1;
    }
    return $s;
}
 
// Driver Code
$s = "grrksfoegrrks";
$c1 = 'e'; $c2 = 'r';
echo replace($s, $c1, $c2);
 
// This code is contributed by anuj_67.
?>

Javascript




<script>
// Javascript program to replace c1 with c2
// and c2 with c1
     
    function replace(s,c1,c2)
    {
        let l = s.length;
    let arr = s.split("");
       
    // loop to traverse in the string
    for (let i = 0; i < l; i++)
    {
       
        // check for c1 and replace
        if (arr[i] == c1)
            arr[i] = c2;
               
        // check for c2 and replace
        else if (arr[i] == c2)
            arr[i] = c1;
    }
       
    return arr.join("");
    }
     
    // Driver code
    let s = "grrksfoegrrks";
    let c1 = 'e', c2 = 'r';
    document.write(replace(s, c1, c2));
     
    // This code is contributed by rag2127
</script>

Output:
 

geeksforgeeks

Time Complexity: O(n) 
 



 

Attention reader! All those who say programming isn’t for kids, just haven’t met the right mentors yet. Join the  Demo Class for First Step to Coding Coursespecifically designed for students of class 8 to 12. 

The students will get to learn more about the world of programming in these free classes which will definitely help them in making a wise career choice in the future.




My Personal Notes arrow_drop_up
Recommended Articles
Page :