📌  相关文章
📜  交换字符串的前半部分和后半部分

📅  最后修改于: 2022-05-13 01:57:08.165000             🧑  作者: Mango

交换字符串的前半部分和后半部分

给定两个字符串a    b    .通过将其中一个字符串的前半部分和后半部分分别与另一个字符串的前半部分和后半部分交换来创建两个新字符串。

例子:

Input : fighter
        warrior
Output :warhter
        figrior

Input :remuneration
       day
Output :dration
        remuneay

在第一个示例中, fighterfighter两部分组成。同样,战士也是由warrior两部分组成。交换两个字符串的第一部分以创建两个新字符串warhterfigrior 。类似地,在第二个示例中,报酬的第一部分即remune一天的第一部分交换以创建drrationremuneay

C++
// CPP code to create two new strings
// by swapping first and second halves
#include
using namespace std;
 
// Function to concatenate two
// different halves of given strings
void swapTwoHalves(string a , string b)
{
    int la = a.length();
    int lb = b.length();
     
    // Creating new strings by
    // exchanging the first half
    // of a and b. Please refer below for
    // details of substr.
    // https://www.geeksforgeeks.org/stdsubstr-in-ccpp/
    string c = a.substr(0, la/2) +
               b.substr(lb/2, lb);
    string d = b.substr(0, lb/2) +
               a.substr(la/2, la);
         
    cout << c << endl << d << endl;
}
 
// Driver function
int main()
{
    string a = "remuneration";
    string b = "day";
    swapTwoHalves(a, b);   
    return 0;
}


Java
// Java code to create two new strings
// by swapping first and second halves
import java.io.*;
class ns
{
    
    // Function to concatenate two
    // different halves of given strings
    public static void swapTwoHalves(String a,
                                     String b)
    {
        int la = a.length();
        int lb = b.length();
         
        // Creating new strings by
        // exchanging the first half
        // of a and b. Please refer below
        // for details of substring.
        // https://www.geeksforgeeks.org/java-lang-string-substring-java/
        String c = a.substring(0,la/2) +
                   b.substring(lb/2,lb);
        String d = b.substring(0,lb/2) +
                  a.substring(la/2,la);
             
        System.out.println(c + "\n" + d);
    }
    public static void main (String args[])
    {
        // Given strings
        String a = "remuneration";
        String b = "day";
         
        // Calling function
        swapTwoHalves(a, b);
    }
}


Python3
# Python 3 code to create two new strings
# by swapping first and second halves
 
 
# Function to concatenate two
# different halves of given strings
def swapTwoHalves( a ,b) :
    la = len(a)
    lb = len(b)
      
    # Creating new strings by
    # exchanging the first half
    # of a and b. Please refer below for
    # details of substr.
    # https://www.geeksforgeeks.org/stdsubstr-in-ccpp/
    c = a[0:la//2] + b[lb//2: lb]
    d = b[0: lb//2] + a[la//2: la]
          
    print( c, "\n" , d )
  
# Driver function
a = "remuneration"
b = "day"
swapTwoHalves(a, b)
 
 
# This code is contributed by Nikita Tiwari


C#
// C# code to create two
// new strings by swapping
// first and second halves
using System;
 
class GFG
{
    // Function to concatenate
    // two different halves
    // of given strings
    static void swapTwoHalves(string a ,
                              string b)
    {
        int la = a.Length;
        int lb = b.Length;
         
        // Creating new strings
        // by exchanging the
        // first half of a and b.
        string c = a.Substring(0, la / 2) +
                   b.Substring(lb / 2,
                               lb / 2 + 1);
        string d = b.Substring(0, lb / 2) +
                   a.Substring(la / 2,
                               la / 2);
             
        Console.Write (c + "\n" +
                       d + "\n");
    }    
     
    // Driver Code
    static void Main()
    {
        string a = "remuneration";
        string b = "day";
        swapTwoHalves(a, b);
    }
}
 
// This code is contributed by
// Manish Shaw(manishshaw1)


PHP


Javascript


输出:

remuneay
dration