字符串

72 阅读1分钟

344.反转字符串
思路:定义两个指针,分别指向头部和尾部,定义一个中间变量temp(不定义temp也可以),交换头部和尾部的位置,两个指针再向中间靠拢即可。

541.反转字符串②
思路:反转每个下标从2K的倍数开始的,长度为k的子串。若该子串长度不足k,则反转整个子串。直接模拟

05.替换空格
思路:将数组扩充到能替换成%20的长度,因为本身有一个空格,所以再增加2乘以空格数的长度;定义双指针,left指向原数组的末尾,right指向扩充后的数组的末尾,当left指向空时,right指针占用三个位置填充%20,left向前移动一位,当left不是空时,将left值赋值给right,left和right同时左移,直至left到0的位置;从后向前操作比从前往后操作性能更优。

151.反转字符串中的单词
思路:

58-2.左旋转字符串
思路:反转前n个子串,反转n往后的子串,整个反转