{{ draftError }}
📥 Pendientes ({{ STRATEGIES[strategy].struct }})
| nodo | valor / cota |
|---|---|
| (vacía) | |
| {{ nodes[id].label }} sale | {{ money(nodes[id].profit) }} / {{ money(nodes[id].bound) }} |
En el orden en que van a salir.
★ Mejor
mejor = {{ fmtBest(currentStep.best) }}
mejorSolucion = {{ currentStep.bestId === null ? '—' : fmtChosen(nodes[currentStep.bestId]) }}
Generados: {{ visibleNodes.length }} de {{ maxNodes }} nodos posibles
📋 Seguimiento por paso
| Paso | Sale | Valor / cota | Peso | mejor | Qué pasa |
|---|---|---|---|---|---|
| (todavía no salió ningún nodo) | |||||
| {{ row.k }} | {{ row.label }} | {{ money(row.profit) }} / {{ money(row.bound) }} | {{ row.weight }} | {{ fmtBest(row.best) }}{{ row.star ? ' ★' : '' }} | {{ row.what }} |
💻 Pseudocódigo
{{ line }}
🧩 Funciones para la mochila 0/1
| i | p | w | p/w |
|---|---|---|---|
| {{ it.i }} | {{ money(it.p) }} | {{ it.w }} | {{ fmtNum(it.p / it.w) }} |
En el orden del árbol · W = {{ capacity }}
| HijosDe(nodo) | incluir o no incluir el siguiente ítem |
| EsFactible(nodo) | peso ≤ {{ capacity }} |
| EsSolucion(nodo) | siempre: toda selección factible es una solución |
| Valor(nodo) | el beneficio |
| Cota(nodo) | beneficio + mochila fraccionaria con los ítems que faltan: se toman por p/w de mayor a menor, enteros mientras entren, y del primero que no entra la fracción que cabe (0 si es infactible) |
🔍 Explicación
{{ currentStep.badge.icon }} {{ currentStep.badge.text }}
Paso {{ currentStepIndex + 1 }} de {{ steps.length }}
⏱️ Complejidad:
| {{ h }} | |
|---|---|
| {{ r[0] }} |
Leyenda
- {1, !2} incluye el ítem 1 y no el 2; abajo, valor / cota y peso / W
- En pendientes
- Nodo que acaba de salir
- Ya salió
- Mejor solución hasta ahora (★)
- Nodo seleccionado con un clic (o en su paso de la tabla): su paso queda resaltado
- 3 Paso en que salió de pendientes
- ✗ Infactible (peso > W)
- ✂ Poda por cota (cota ≤ mejor)