麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

華為機試在線訓練-牛客網(16)字符串排序

2019-11-10 19:37:03
字體:
來源:轉載
供稿:網友

題目描述

編寫一個程序,將輸入字符串中的字符按如下規則排序。

規則1:英文字母從A到Z排列,不區分大小寫。

      如,輸入:Type 輸出:epTy

規則2:同一個英文字母的大小寫同時存在時,按照輸入順序排列。

    如,輸入:BabA 輸出:aABb

規則3:非英文字母的其它字符保持原來的位置。

    如,輸入:By?e 輸出:Be?y

樣例:

    輸入:

   A Famous Saying: Much Ado About Nothing(2012/8).

    輸出:

   A aaAAbc dFgghh: iimM nNn oooos Sttuuuy (2012/8).

輸入描述:

輸出描述:

輸入例子:
A Famous Saying: Much Ado About Nothing (2012/8).
輸出例子:
A aaAAbc dFgghh: iimM nNn oooos Sttuuuy (2012/8).

這是一道純字符處理問題,難點在大小寫不區分排序,默認的ASCII碼排序是區分大小寫的,而且相差32,直接排序會使所有小寫字母都排在后面。

而此題要保證:

(1)小寫字母和大寫字母不區分,而且保持原來輸入順序!

(2)非英文字母保持原樣輸出

關鍵問題在于如何保證大小寫字母不區分且保持原來順序,目前能想到的辦法是從a到z依次去string中找,找到一個字母就添加進來:

        for(int i=0;i<26;i++){            for(auto c:str_sort){//str_sort為待排字符串                if(c=='a'+i||c=='A'+i)                    str_temp+=c;//str_temp為排序后的字符串,字母大小寫不區分且保持原序            }        }對于第二個問題,可以拷貝一份string副本,非字母字符保持不變,字母字符以'0'替換,將經過上述方法排序過的string替換掉該副本的所有'0'字符即可。

完整AC后的代碼:

#include <iostream>#include <string>using namespace std;int main(){    string inStr;    while(getline(cin,inStr)){        string str_temp,str_sort,str_res;        str_res=inStr;        for(auto &e:str_res){            if((e>='a'&&e<='z')||(e>='A'&&e<='Z')){                str_sort+=e;                e='0';            }        }        for(int i=0;i<26;i++){            for(auto c:str_sort){                if(c=='a'+i||c=='A'+i)                    str_temp+=c;            }        }        int i=0;        for(auto &e:str_res){            if(e=='0'){               e=str_temp[i];               i++;            }        }        cout<<str_res<<endl;;    }    return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久无码精品亚洲日韩按摩 | 欧美中文字幕一区二区三区亚洲 | 久久免费视频8 | 黄色毛片a级 | 国产成人精品免费视频大全办公室 | 毛片在线视频免费观看 | 欧美hdfree性xxxx | 91九色网址 | 欧美性受xxxx人人本视频 | 一区二区三区播放 | 成人在线视频免费观看 | 国产亚洲精品久久久久久网站 | 91在线视频播放 | 色婷婷久久久久久 | 视频一区二区三区在线观看 | 亚洲成人第一区 | 国产午夜精品一区二区三区视频 | 九九色网站 | 手机国产乱子伦精品视频 | 黄色网址在线播放 | 黄色男女视频 | 成人在线视频在线观看 | 青青国产在线视频 | 亚洲精品久久久久久久久久久 | 91九色视频观看 | 精品国产一区二区三区天美传媒 | 91毛片网站| 性少妇videosexfreexx | 99精品视频久久精品视频 | 超碰99在线观看 | 黄色成人小视频 | 久国久产久精永久网页 | 国产一区免费在线 | 毛片毛片 | wwwxxx国产| 99精品视频在线观看免费播放 | 欧美日本在线播放 | 精品国产呦系列在线看 | 欧美亚洲国产一区二区三区 | 男人的天堂毛片 | 免费高清一级欧美片在线观看 |