zoukankan      html  css  js  c++  java
  • 腾讯2017暑假实习生编程题之字符移位


    问题描述:
    小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。
    你能帮帮小Q吗?

    输入描述:

    输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.

    输出描述:

    对于每组数据,输出移位后的字符

    示例1

    输入

    AkleBiCeilD
    

    输出

    kleieilABCD
    ——————————————————————————————————————————————————————————-——————————————————————

    结题思路:
    可以采用冒泡法的思想,若大写字母后面紧跟小写字母,可以将小写字母移到前面,大写字母移到后面
    代码如下;
    #include<iostream>
    #include<string>
    using namespace std;
    int main()
    {
        string s;
        while(cin>>s){
            for(int i=0;i<s.length()-1;i++)
            for(int j=0;j<s.length()-1-i;j++){
                if(s[j]>='A'&&s[j]<='Z'&&(s[j+1]<'A'||s[j+1]>'Z')){
                    char temp=s[j];
                    s[j]=s[j+1];
                    s[j+1]=temp;
                }
            }
            cout<<s<<endl;
        }
        return 0;
    }

    _________________________________________________________________________________-

    分享以为大佬变态的思路:遍历字符串,分别将大小写输出,结果也能AC,只能说666




  • 相关阅读:
    Rescue_BFS
    Gnome Tetravex_DFS
    Tian Ji -- The Horse Racing_贪心
    A Walk Through the Forest_spfa&&dfs
    迷宫城堡_逆置图&&DFS*2
    Wooden Sticks_贪心
    compute post expression
    infix to postfix 完整版
    Infix to postfix without '(' and ')'
    infix expression 计算完全版
  • 原文地址:https://www.cnblogs.com/yfz1552800131/p/7491350.html
Copyright © 2011-2022 走看看