Exemplo clássico de problema de mochila

O problema da mochila é uma programação dinâmica clássica, que é dividida em mochila 0-1, mochila completa e mochilas múltiplas. A mochila 0-1 trata de escolher ou não escolher, e a mochila completa trata de escolher alguns itens quando o número de itens é infinito. Mochilas múltiplas são uma questão de escolha quando a quantidade de cada item é diferente.
Principalmente master 01 e completo

01 mochila

Aplicável a

  1. Um problema típico da mochila 01. São n itens. Todos possuem qualidade e valor próprios. Existe uma mochila com volume V. Qual o valor máximo dos itens que podem ser levados? ACW_E2
  2. Pegue vários valores de uma sequência para que a soma desses valores fique mais próxima do alvo. Pergunte qual é o valor mais próximo M1049
  3. Pegue vários valores de uma sequência para que a soma desses valores seja o alvo. Quantos métodos de seleção existem? M494
  4. Selecione vários itens de um grupo de itens. Os itens têm volume e peso. Esta não é uma mochila múltipla, mas o peso dos itens tem duas dimensões. M474

Mochila completa

A única diferença da mochila 01 é que a quantidade de itens é ilimitada

  1. Problema típico de mochila completa, ACW_E3dp[j]=max(dp[j],dp[j-vs[i]]+ws[i])
  2. Selecione várias matrizes de uma matriz para formar novos números, e não há limite para o número de cada número, M518dp[j] += dp[j-coins[i]]
  3. Selecione várias matrizes de uma matriz para formar novos números e não há limite para o número de cada número. Pelo menos quantos números podem ser combinados para formar o número alvo M322dp[j]=min(dp[j],dp[j-coins[i]]+1)
  4. Selecione vários arrays de um array para formar novos números, e não há limite para o número de cada número. Mas quantos tipos de permutação existem? M377先容量再物品 dp[j]+=dp[j-nums[i]]

mochila de árvore

Supongo que te gusta

Origin blog.csdn.net/qq_41926099/article/details/131797484
Recomendado
Clasificación