Публикации по теме 'dynamic-programming'


Простое динамическое программирование
Понимание динамического программирования путем решения популярной проблемы LeetCode Представьте, что у вас есть мешок с монетами, в котором каждая монета стоит 5 долларов, и вам нужно найти общую сумму денег, доступную в этой сумке. Что бы вы сделали, чтобы найти общую сумму в сумке? Вы подсчитываете количество монет и умножаете его на 5 долларов. Итак, если количество монет вышло 100, то у вас есть сумма в 500 долларов. Теперь, если я добавлю еще 10 монет по 5 долларов в этот..

Ускорение коммивояжера с помощью динамического программирования
Информатика в значительной степени усложняется тем, что бывает трудно понять, с чего начать, когда дело доходит до решения сложной, казалось бы, непреодолимой проблемы. Одна из причин, по которой некоторые вещи могут казаться такими сложными, заключается в том, что они являются многоэтапными задачами, и они предполагают, что мы сначала понимаем проблему, затем рассматриваем простейшее решение, а затем повторяем это решение, чтобы сделать его лучше, эффективнее и элегантнее. . Я часто..

[Leetcode 16] 3Sum Closest в JavaScript, часть 2.
Привет, ребята, мы рассмотрели проблему 3Sum Closest — это вопрос среднего уровня в LeetCode. пришло время сделать другой подход к этой проблеме, который может улучшить время выполнения этой проблемы. Вопрос заключается в следующем: «Дав массив nums из n целых чисел и целое число target , найдите три целых числа в nums , сумма которых ближе всего к target . Возвращает сумму трех целых чисел. Вы можете предположить, что каждый вход будет иметь ровно одно решение». Он дал тестовый..

Используйте динамическое программирование для улучшения рекурсивных решений
Рекурсия отличная. Это позволяет нам написать немного логики, а затем многократно выполнять эту логику на все меньшем и меньшем наборе данных, пока не будет достигнут наш базовый вариант. Таким образом, мы можем писать краткий и элегантный код. Рекурсивный случай Возьмем, к примеру, знаменитую последовательность Фибоначчи, которая работает путем суммирования двух предыдущих чисел в последовательности для определения следующего числа. 1-1-2-3-5-8-13-21-34-55-89 etc... Используя..

Алгоритм решения задач: задача с двумя и тремя суммами
Алгоритм решения задач: задача с двумя и тремя суммами ОБНОВЛЕНИЕ. В настоящее время статья содержит методы грубой силы для решения задачи с тремя суммами. Скоро будут обновлены лучшие подходы. Я начал изучать Пришествие кода на 2020 год. В первый день сценарий включал в себя написание программы для поиска произведения n чисел, которые в сумме дают заданное целевое значение суммы. Итак, в идеале найти эти два/три элемента — это ключ. В этой статье объясняются различные..