Length of Last Word на Python: Решаем LeetCode задачи уровня Easy

Поділитися
Вставка
  • Опубліковано 20 чер 2023
  • В этот раз Альбина решила взять задачу под номером 58, которая также известна, как Length of Last Word. Если описывать ее в двух словах, то в исходном предложении нужно определить последнее слово и в качестве результата вернуть количество символов из которого это слово состоит. Звучит просто, но на практике пришлось попотеть.
    Ссылка на задачу: leetcode.com/problems/length-...
    GitHub репозиторий github.com/valeryvpetrov-dev/AK
    Актуальные вакансии: career.technokratos.com/
    Telegram: t.me/technokratos
    ВКонтакте: technokratos
    #LeetCode #python #АлгоритмическаяКачалка #Программирование #Алгоритмы

КОМЕНТАРІ • 15

  • @attic_owl
    @attic_owl 11 місяців тому +2

    Прикольно) на ум сразу приходит именно питонячий вариант)
    В первом варианте кстати можно еще идти с конца строки. Это тоже О(n) в худшем случае, но в кейсах с большим количеством слов в строке - ускорит время выполнения

    • @technokratosTV
      @technokratosTV  11 місяців тому

      да, классный вариант, почему-то автору это в голову сразу не залетело

  • @waleev
    @waleev 11 місяців тому +1

    Требую еще приглашать Альбину!

  • @normanwow
    @normanwow 6 місяців тому +4

    return len(s.split()[-1])

    • @sergeyleonov1510
      @sergeyleonov1510 4 місяці тому

      Все верно, split() по умолчанию разбивает строки по пробелам.

    • @Seva896
      @Seva896 Місяць тому

      По хорошему, надо еще проверить, что результат после сплита не пуст.

  • @user-yj1on3bf1v
    @user-yj1on3bf1v 17 днів тому

    Надо с конца строки идти, если пробел и строка под слово не пустая, то выход из цикла принудительно (не знаю есть такое в питоне или нет). Если не пробел, то добавляем символ в строку. Важно заметить, что строку надо формировать задом наперед. Т.е. нужно к символу добавлять строку ('s' + lastWord), а не наоборот, потому что символы идут с конца строки при формировании слова.
    Если че я не питонист, код в уме написал за несколько минут. Не проверял, но вроде будет работать и вроде оптимальная сложность алгоритма.

  • @KotBtc
    @KotBtc 11 місяців тому +1

    Ждем еще задач )

    • @technokratosTV
      @technokratosTV  11 місяців тому +1

      Следующий выпуск почти готов. А вы пока предлагайте задачи, которые Альбина может разобрать

    • @user-yj1on3bf1v
      @user-yj1on3bf1v 17 днів тому

      @@technokratosTV Коммент не опубликовался. Кароче дайте Альбине нормальную задачу. Есть два прямоугольника, нужно определить есть ли вложенность одного в другой (полная вложенность) и определить есть ли точка пересечения между прямоугольниками (и граница и внутренняя часть считаются частью прямоугольника). Также определите площадь пересечения.
      Желаю Альбине удачи :)))

  • @dadyx85
    @dadyx85 6 місяців тому

    Я тоже путаю strip и trim. Trim в C#)))

  • @anotheraleks
    @anotheraleks 11 місяців тому

    len это O(1), а не проход по строке

    • @technokratosTV
      @technokratosTV  11 місяців тому

      Ваша правда, ошиблись

  • @slmpnv
    @slmpnv 2 місяці тому

    return len(s.split()[-1])

    • @user-yj1on3bf1v
      @user-yj1on3bf1v 17 днів тому +1

      тут задачу решают, а не встроенный метод используют. на собесе такое не показывайте, а то не поймут юмора.