您的位置:首页 > 其它

leetcode summary-section II

2015-08-19 15:29 267 查看
151 Reverse Words in a String

class Solution {
public:
void reverseWords(string& s) {
reverse(s, 0, s.length);
for (int i=0, j=0; j<=s.length; j++) {
if (j==s.length || s[j]==' ') {
reverse(s, i, j);
i =  j + 1;
}
}
}

void reverse(string& s, int begin, int end) {
while (begin < end - 1) {
swap(s[begin], s[end - 1]);
begin++; end--;
}
}
};


View Code
是上一题的简化版。先翻转整个string,再逐个单词翻转。其中,专门用一个下标 i 来指示单词的起始位置。

233 number of digit 1s
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: