题解 | #字符串变形#

字符串变形

https://www.nowcoder.com/practice/c3120c1c1bc44ad986259c0cf0f0b80e

这个解法主要运用了栈后进先出的原理

class Solution {
public:
    string trans(string s, int n) {
        // write code here
        stack<string> r;
        string str;
        s.push_back(' ');
        for(int i = 0; i <= n ; ++i){
            if(s[i] == ' '){
                r.push(str);        //遇到空格,则往里压入Str也就是空格前面的单词
                str = "";
            }else{                //这是往str字符串中加字母,逐一改变大小写
                if(s[i] >= 'a' && s[i] <= 'z'){
                    str += (s[i] - 'a' + 'A');  //变大写
                }else{
                    str += (s[i] - 'A' + 'a');     //变小写
                }
            }
        }
        string ans;
        while(!r.empty()){
            ans += r.top();
            r.pop();
            ans.push_back(' ');
        }
        ans.pop_back();
        return ans;
    }
};
全部评论

相关推荐

02-05 17:50
已编辑
武汉工程科技学院 Java
点赞 评论 收藏
分享
求求要我吧:你教育经历放在下面干什么,而且27届还是28届啊()另外看你简历有两面,通常来说投递运营岗位一面简历就够了。另外个人总结要写也放在简历最下面,然后你奖项那里是2019年的哇哈哈,那你究竟投递的是社招还是实习?实习的话你是第几届是肯定要写出来的,社招的话你这个工作经历又太短太花了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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