We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 237728f commit 9977fb5Copy full SHA for 9977fb5
problems/0541.反转字符串II.md
@@ -412,6 +412,26 @@ object Solution {
412
}
413
```
414
415
+版本三: (递归)
416
+```scala
417
+import scala.annotation.tailrec
418
+
419
+object Solution {
420
+ def reverseStr(s: String, k: Int): String = {
421
+ @tailrec // 这个函数已经优化成了尾递归
422
+ def reverse(s: String, needToReverse: Boolean, history: String): String = {
423
+ // 截取前k个字符(判断是否翻转)
424
+ val subStr = if (needToReverse) s.take(k).reverse else s.take(k)
425
+ // 如果字符串长度小于k,返回结果
426
+ // 否则,对于剩余字符串进行同样的操作
427
+ if (s.length < k) history + subStr
428
+ else reverse(s.drop(k), !needToReverse, history + subStr)
429
+ }
430
+ reverse(s, true, "")
431
432
+}
433
+```
434
435
Rust:
436
437
```Rust
0 commit comments