对于给定的一个包含连续字母、连续数字及空格的字符串(不会出现字母和数字连在一起出现),实现字母部分按出现顺序排列而数字按照从小到达顺序排在最后一个字母的后面-笔试面试资料

这是qklbishe.com第15192 篇笔试面试资料
提供答案分析,通过本文《对于给定的一个包含连续字母、连续数字及空格的字符串(不会出现字母和数字连在一起出现),实现字母部分按出现顺序排列而数字按照从小到达顺序排在最后一个字母的后面-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:
对于给定的一个包含连续字母、连续数字及空格的字符串(不会出现字母和数字连在一起出现),实现字母部分按出现顺序排列而数字按照从小到达顺序排在最后一个字母的后面

对于给定的一个包含连续字母、连续数字及空格的字符串(不会出现字母和数字连在一起出现),实现字母部分按出现顺序排列而数字按照从小到达顺序排在最后一个字母的后面 ch20190329135644
“`
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param text_source string字符串 原始输入
     * @return string字符串
     */
    string char_and_num_return(string text_source) {
        string ans;
        vector<long long> v;
        for(int i = 0;i < text_source.size();){
            int j = i;
            if(isalpha(text_source[i])){
                while(j < text_source.size() && isalpha(text_source[j])) j ++;
                ans += " " + text_source.substr(i,j – i);
                i = j + 1;
            }else{
                long long num = 0;
                while(text_source[j] >= ‘0’ && text_source[j] <= ‘9’){
                    num = num * 10 + text_source[j] – ‘0’;
                    j ++;
                }
                i = j + 1;
                v.push_back(num);
            }
        }
        sort(v.begin(),v.end());
        for(auto i : v) ans += " " + to_string(i);
        return ans.substr(1);
    }
};

“`

2021-08-26 21:50:30 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 对于给定的一个包含连续字母、连续数字及空格的字符串(不会出现字母和数字连在一起出现),实现字母部分按出现顺序排列而数字按照从小到达顺序排在最后一个字母的后面-笔试面试资料

提供最优质的资源集合

立即查看 了解详情