Публикации по теме 'dynamic-programming'
Динамическое программирование
Обзор
Одной из основных целей при решении проблемы является минимизация объема вычислений, чтобы мы могли быстрее найти решение. Это идея динамического программирования.
Давайте разберемся в этом на простом примере. Возможно, вы знакомы с хорошо известным рядом — рядом Фибоначчи .
Ряд Фибоначчи выглядит следующим образом:
0, 1, 1, 2, 3, 5, 8, 13…
Ряд начинается с 0, за которым следует 1, а затем вычисляется следующий член путем сложения двух последних членов ряда.
Пусть T(i) —..
Шаблоны динамического программирования, от хорошего к великому и как подойти к большинству проблем DP.
Люди публикуют свои решения, не сообщая никакой информации о том, как они были получены. Они не предоставляют гораздо больше объяснений.
К этой конкретной проблеме и большинству других можно подойти, используя следующую последовательность:
Найти рекурсивное отношение Рекурсивный (сверху вниз) Рекурсивный + памятка (сверху вниз) Итеративный + памятка (снизу вверх) Итеративный + N переменных (снизу вверх)
Вопрос. Вы профессиональный грабитель, планирующий ограбить дома вдоль..