leetcode -> 344 — обратная строка
344 — обратная строка —
Напишите функцию, которая инвертирует строку. Входная строка задана в виде массива символов s.
Вы должны сделать это, изменяя входной массив на месте с O(1) дополнительной памяти
sol 1 — Pattern ‘Stack’ — Использование стека DS , но он использует O(N) дополнительной памяти.
sol 2 — 2 Pointer Approach — использование двух указателей не требует дополнительной памяти
временная сложность -O(N)
пространственная сложность -O(1)
Код —
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
i,j =0,len(s)-1
while i<j :
s[i],s[j]=s[j],s[i]
i+=1
j-=1
return s