乐趣区

关于递归:Golang力扣LeetBook初级算法反转字符串

题目 :编写一个函数,其作用是将输出的字符串反转过去。输出字符串以字符数组 s 的模式给出。
不要给另外的数组调配额定的空间,你必须原地批改输出数组、应用 O(1) 的额定空间解决这一问题。

链接:力扣 LeetBook—高级算法—数组—反转字符串.

示例 1:

输出:s = [“h”,”e”,”l”,”l”,”o”]
输入:[“o”,”l”,”l”,”e”,”h”]

示例 2:

输出:s = [“H”,”a”,”n”,”n”,”a”,”h”]
输入:[“h”,”a”,”n”,”n”,”a”,”H”]

标签:递归、双指针、字符串

解题思路:对称替换即

次要 Go 代码如下:

func reverseString(s []byte)  {n := len(s)
    mid := n / 2
    for i := 0; i < mid; i++ {s[i], s[n-i-1] = s[n-i-1], s[i]
    }
}

提交截图

退出移动版