Python — Leetcode : День 1

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 
Вход в полноэкранный режим Выход из полноэкранного режима

Оцените статью
Procodings.ru
Добавить комментарий