题解 | #字符串排序#

字符串排序

https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

#include<iostream>
#include<string>
using namespace std;

bool ischar(char c) { //判断是否是字符
    return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
}

int toint(char c) { //将大小写字母转为同样的数字起跑线
    return (c >= 'a' && c <= 'z') ? c - 'a' : c - 'A';
}
int main() {
    string s;
    while (getline(cin, s)) {
        int next;
        //冒泡
        for (int i = s.length() - 1; i > 0; i--) {
            for (int j = 0; j < i; j++) {
                if (ischar(s[j])) { //首先要是字母才可以交换位置
                    next = j + 1;
                    while (next <= i && !ischar(s[next]))
                        next++; //找到下一个字母
                    if (ischar(s[next]) && toint(s[j]) > toint(s[next])) {
                        swap(s[j], s[next]); //交换
                    }
                }
            }
        }
        cout << s << endl;
    }
    return 0;
}

全部评论

相关推荐

虽然大家都在劝退读研,说读研以后也是打工,不如本科直接去打工,但随着现在研究生越来越多,很多企业招聘要求就会变成研究生起招,本科投递简历就会被卡,横向比较时也会因为"本科学历比不上研究生学历"被筛掉,而且你没发现劝退读研的基本都是读完研的人吗?而且进体制、国企等,研究生也比本科生升的快,他们拿着研究生文凭劝你一个本科生,可别当真了
炬火初现:肯定是说本科能有好工作或者满意的可以不读研啊,现在本科能找到好工作的那个不优秀,大学四年赛高中,而且还要和学校斗智斗勇,这种时候自然有的选,要是只是觉得一辈子混口饭吃,大概率也考不上研,或者考上又浑浑噩噩三年,也难说。 而且考研所谓的优势说实话是你用差不多四年的时间成本(考一年,读三年)换过来的,而且还未必读完有今年的就业市场,当然不能随便决定读。 再还要看专业,一些稀奇古怪的专业说实话根本没有办法创造出什么价值,也没钱赚(如果有爱好,可以适当降低报酬标准)。现在非92的研究生说实话也没啥太多所谓优势,难说。 所以任何时候都要具体情况具体分析,不能一概而论。 一点点小看法。欢迎大家友善讨论。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务