反转字符串
image-20201115213132649

双指针法

第一个和最后一个交换位置,重复这个过程,终止条件是left >= right

1
2
3
4
5
6
7
func reverseString(s []byte) {
l := len(s)
for left, right := 0, l-1; left < right; left++ {
s[left], s[right] = s[right], s[left]
right--
}
}

时间复杂度

O(n)

空间复杂度

O(1)

文章作者: Luis
文章链接: https://warrest.github.io/2020/11/15/%E5%8F%8D%E8%BD%AC%E5%AD%97%E7%AC%A6%E4%B8%B2/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Luis's Blog