344. Reverse String
Write a function that reverses a string. The input string is given as an array of characters char[].
Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.
You may assume all the characters consist of printable ascii characters.
Example 1:
'''text Input: ["h","e","l","l","o"] Output: ["o","l","l","e","h"] '''
Example 2:
'''text Input: ["H","a","n","n","a","h"] Output: ["h","a","n","n","a","H"] '''
解法
只要注意是原地翻转就好了。
内建方法
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
s.reverse()
两根指针
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
l, r = 0, len(s) - 1
while l < r:
s[l], s[r] = s[r], s[l]
l += 1
r -= 1
pythonic
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
s[:] = s[::-1]
时间复杂度和空间复杂度都是。
Last updated
Was this helpful?