题解 | #字符串变形#
字符串变形
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; } };