Взлом URL-адреса собеседования по кодированию: кодирование пробелов как% 20

Я получил новый ответ, пытаясь задать вопрос URLify из Взломать интервью по кодированию книга. Мой ответ полностью отличается от подхода, показанного в книге.

Проблема

Возьмите строку, которая может содержать пробелы, и верните строку, в которой все последовательные пробелы заменены одним% 20.

Мое решение:

def URLfy(string):
    result=""
    prev = ''    
    for s in string.strip():
        if s != ' ':
            result += s  
        if s ==' ':
            if prev == ' ':
                continue
            result += '%20'
        last = s
    return result

Временная сложность такая же т.е. $ mathcal {O} (n) $.

Может ли кто-нибудь проверить мое решение?

1 ответ
1

Если result += s это операция с постоянным временем, она будет выполняться в $ O (п) $ время. В питоне это может быть правдой но я бы не стал на это полагаться.

Как указано в комментариях, в вашем коде есть ошибка. Протестируйте код перед его проверкой.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *