541. 反转字符串 II

题目链接:https://leetcode-cn.com/problems/reverse-string-ii/
执行用时:52 ms, 在所有 Swift 提交中击败了70.00% 的用户
内存消耗:14.3 MB, 在所有 Swift 提交中击败了35.00% 的用户

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class Solution {
func reverseStr(_ s: String, _ k: Int) -> String {
var len = s.count
var arr = [Character](s)
var flag = false
var left = 0, right = 0
for i in stride(from: 0, to: len, by:k) {
//第奇数个k则需要反转
if (i/k) % 2 == 1 {
right = i - 1
flag = true
arr[left...right].reverse()
}else{
left = i
flag = false
}
}
//第偶数个k之后剩余的字符少于k时全部反转
if !flag {
arr[left ..< len].reverse()
}
return String(arr)
}
}

541. 反转字符串 II
https://pisces34.github.io/2021/08/20/leetcode/541/
发布于
2021年8月20日
许可协议