151、反转字符串中的单词
关键点1:移除空格很巧妙,用到快慢指针,快指针逐个遍历,用while循环当没有遇到s[i] = 空格时,把整个单词逐个通过快指针i传给慢指针slow所指向的地址。当i遇到空格时,循环退出说明遇到空格了,在s[slow++]位置添加空格。
关键点2:反转字符串。遍历数组,i<=s.size()时,如果遇到空格或遍历到末尾,翻转该部分。条件之所以带上=s.size(),是需要遍历到数组末尾时翻转。左闭右开。
55、右旋字符串
关键点1:分段读入数据时。第一次,cin>>n;第二次,cin>>s;
关键点2:整个翻转;前n个翻转,顺序正确;剩下部分翻转,全部顺序正确。