代码随想录算法题训练营Day8

74 阅读1分钟

344.反转字符串

双指针的精妙。

541.反转字符串II

let l = i, r = i + k - 1 > len - 1 ? len - 1 : i + k - 1; 注意这里对于右指针边界的判断,注意是否超出了字符串长度。

剑指Offer 05.替换空格

字符串这边主要使用双指针。一个右指针,一个左指针。左指针遇到字母就直接往右指针填充,左指针遇到空格就让右指针连着往前填充三个。 疑问:为什么一定要进行字符串转数组再转回字符串的处理?不能把字符串按照数组处理吗?

剑指Offer 58-II.左旋字符串

将字符串前面的若干字符旋转到字符串尾部。
这道题重要的主要是这种思路:
1.反转前n子串。
2.反转n到末尾的子串。
3.反转整个字符串。

剩下的写一个reverse小函数调用三次就好。