mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-07 15:45:40 +08:00
右旋字符串 swift版本
This commit is contained in:
@ -350,7 +350,29 @@ function reverseStr(s, start, end) {
|
||||
|
||||
|
||||
### Swift:
|
||||
```swift
|
||||
func rotateWords(_ s: String, _ k: Int) -> String {
|
||||
var chars = Array(s)
|
||||
// 先反转整体
|
||||
reverseWords(&chars, start: 0, end: s.count - 1)
|
||||
// 反转前半段
|
||||
reverseWords(&chars, start: 0, end: k - 1)
|
||||
// 反转后半段
|
||||
reverseWords(&chars, start: k, end: s.count - 1)
|
||||
return String(chars)
|
||||
}
|
||||
|
||||
// 反转start...end 的字符数组
|
||||
func reverseWords(_ chars: inout [Character], start: Int, end: Int) {
|
||||
var left = start
|
||||
var right = end
|
||||
while left < right, right < chars.count {
|
||||
(chars[left], chars[right]) = (chars[right], chars[left])
|
||||
left += 1
|
||||
right -= 1
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
### PHP:
|
||||
|
Reference in New Issue
Block a user