Logo

[LeetCode] 344. Reverse String

[LeetCode] 344. Reverse String の解答と解説

問題

https://leetcode.com/problems/reverse-string/description/

解答と解説

class Solution:
    def reverseString(self, s: List[str]) -> None:
        """
        Do not return anything, modify s in-place instead.
        """
        left, right = 0, len(s) - 1
        while left < right:   
            s[left], s[right] = s[right], s[left] 
            left += 1
            right -= 1

sの文字列の長さをnとした時、

  • Time Complexity: O(n)
  • Space Complexity: O(1)

Space ComplexityがO(1)という制約があるので単純なIterationでは処理できない。Two Pointersの典型問題。