Публикации по теме 'memoization'


Мемоизация: сделайте свой код умнее, чтобы вам не приходилось им быть
Запоминание . Даже текстовый редактор Medium считает, что слово неверно. Если вы видите это слово впервые, вы можете спутать его с «заучиванием», но да, в нем нет буквы «р». Мемоизация — это причудливый способ сказать «запоминать что-то, чтобы вам не пришлось делать это снова». А кому не нравится хороший ярлык? В этой статье мы узнаем о том, где использовать, как использовать и когда использовать запоминание вместе с некоторыми фрагментами кода, чтобы понять, что мы изучаем...

Почему ДП: ЛКС
При рекурсивном подходе к этой проблеме 25-й/1307-й тестовые случаи потребовали тайм-аута. По большей части рекурсия медленнее и занимает больше стека вызовов. Возьмем, к примеру, строку 9. Это вызов lcs для двух частей (i+1, j) и (i, j+1). После первых двух итераций становится ясно, что эта функция вызвала lcs для тех же значений i и j. Повторный вызов одной и той же функции и параметра не приводит к оптимизации и увеличивает стек вызовов до такой степени, что мы достигаем..

Понимание замыканий в JavaScript: руководство для начинающих
Замыкание в JavaScript — это функция, которая имеет доступ к переменным и параметрам своей внешней функции даже после возврата внешней функции. Это означает, что замыкание может запоминать и обращаться к переменным в той области видимости, в которой оно было создано, даже если создавшая его функция завершила выполнение и ее область видимости была уничтожена. Закрытие создается, когда внутренняя функция ссылается на переменную из внешней функции. Внутренняя функция сохраняет ссылку на..

Алгоритмы: динамическое программирование, грабитель дома
Проблема Вы профессиональный грабитель, планирующий ограбить дома вдоль улицы. В каждом доме спрятана определенная сумма денег, единственное ограничение, мешающее вам ограбить каждый из них, заключается в том, что в соседних домах подключены системы безопасности, и он автоматически свяжется с полицией, если два соседних дома будут взломаны в одну и ту же ночь . Дан целочисленный массив nums , представляющий сумму денег в каждом доме, верните максимальную сумму денег, которую вы..

Функция запоминания в JS
Мемоизация в JavaScript — это метод оптимизации, позволяющий уменьшить сложность приложения, время его выполнения и правильное использование ресурсов (времени и памяти). Этот процесс заключается в использовании дополнительного пространства (кэша) для сокращения дорогостоящих вызовов функций (функция, которая рекурсивно вызывает сама себя и имеет некоторую проблему перекрытия). Используя мемоизацию, мы сохраняем значения, вычисленные в ранее вызванных подзадачах. Затем, если возникает та же..

Вопросы на собеседовании по Javascript: нумерация страниц, мемоизация, всплытие событий
1. Что такое пагинация? Что такое пагинация? И как реализовать это на своем сайте — SEOptimer Пагинация — это последовательность связанных страниц с похожим содержанием. Важно отметить, что даже когда содержимое раздела страницы разделено на отдельные страницы, мы все равно будем определять это как нумерацию страниц. Зачем использовать пагинацию? Улучшенный пользовательский опыт Упрощенная навигация Сценарий в реальном времени . Возьмем веб-сайт Amazon или веб-сайт..

LeetCode 1293: Кратчайший путь в сетке с устранением препятствий
Самый частый «сложный» вопрос, который появлялся в интервью Google на местах за последние 6 месяцев (на данный момент). Заметки по алгоритму для меня и всех. Причины, по которым я хочу написать некоторые заметки по этому вопросу, следующие: По данным LeetCode, это самый частый «трудный» вопрос, который появлялся в интервью Google на местах за последние шесть месяцев (на данный момент). Он затрагивает несколько важных алгоритмических концепций, таких как мемоизация, BFS и очереди...