news 2026/4/15 9:50:25

0-1背包问题(回溯法)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
0-1背包问题(回溯法)

01 背包问题是什么?

问题描述:

n个物品

每个物品:

重量w[i]

价值v[i]

背包容量为W

每个物品只能选 0 次或 1 次(这就是 “01” 的由来)

目标:
在不超过背包容量的前提下,使总价值最大

举个直观例子

物品重量价值
1115
2320
3430

背包容量W = 4

选 1 + 2 → 重量 4,价值 35

只选 3 → 价值 30

最优答案:35

01 背包的回溯法在干什么?

一句话版:

回溯法 = 枚举所有“选 / 不选”的可能,通过搜索树找最优解

本质是:

深度优先搜索(DFS)

穷举解空间

用剪枝减少搜索量

注意:
回溯法不是最终高效解法,而是:

理解问题本质

讲解 DP 推导的“母体”

回溯视角下的 01 背包

每个物品只有两个选择

对第i个物品:

要么选
要么不选
所以整个问题就是一棵二叉决策树

决策树长什么样?

假设有 3 个物品:

物品1
/ \
不选 选
物品2 物品2
/ \ / \
不选 选 不选 选
物品3 物品3 物品3 物品3

树深度 = 物品个数n

每一条从根到叶子的路径 = 一种方案

叶子节点 = 一种完整选择

回溯 = 在这棵树上走、试、退

代码:

class Knapsack { private: int n; // 物品个数 double c; // 背包容量 vector<double> W; // 重量 vector<double> V; // 价值 double cw; // 当前重量 double cv; // 当前价值 double bestv; // 最优价值 void backtrace(int i) { // 所有物品都考虑完了 if (i == n) { if (cv > bestv) bestv = cv; return; } // 1️⃣ 不选第 i 个物品 backtrace(i + 1); // 2️⃣ 选第 i 个物品(前提是不超重) if (cw + W[i] <= c) { cw += W[i]; cv += V[i]; backtrace(i + 1); // 回溯 cw -= W[i]; cv -= V[i]; } } public: double getMaxVal(const vector<double>& w, const vector<double>& v, double cc) { W = w; V = v; n = W.size(); if (n == 0 || n != V.size()) return 0; c = cc; cw = 0; cv = 0; bestv = 0; backtrace(0); return bestv; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 14:13:15

ESP32 的宝藏开源项目:ESP32 - Bus - Pirate 打造硬件调试瑞士军刀

大家好&#xff0c;我是杂烩君。当你手里拿着一个ESP32开发板&#xff0c;除了做物联网项目&#xff0c;还能干什么&#xff1f; 可以借助ESP32-Bus-Pirate把ESP32板子变成了一把"瑞士军刀"&#xff0c;能够与20多种数字协议和无线协议进行交互。 1. ESP32-Bus-Pir…

作者头像 李华
网站建设 2026/4/14 4:18:40

【ICLR26-加州大学】GEN2SEG:生成模型实现可泛化的实例分割

文章&#xff1a;GEN2SEG: GENERATIVE MODELS ENABLE GENERALIZABLE INSTANCE SEGMENTATION代码&#xff1a;https://reachomk.github.io/gen2seg单位&#xff1a;加州大学戴维斯分校一、问题背景人类仅凭有限经验就能识别各类陌生物体&#xff0c;而传统视觉模型的“零样本迁移…

作者头像 李华
网站建设 2026/4/13 21:22:12

股市估值差异对国际技术标准制定的影响

股市估值差异对国际技术标准制定的影响关键词&#xff1a;股市估值差异、国际技术标准制定、技术创新、市场竞争、产业发展摘要&#xff1a;本文深入探讨了股市估值差异对国际技术标准制定的影响。首先介绍了研究的背景、目的、范围以及预期读者等内容。接着阐述了股市估值差异…

作者头像 李华
网站建设 2026/4/8 12:55:31

丹诺医药拿到IPO备案:暂无收入,9个月亏1.15亿 估值20亿

雷递网 雷建平 2月8日丹诺医药&#xff08;苏州&#xff09;股份有限公司&#xff08;简称&#xff1a;“丹诺医药”&#xff09;日前通过IPO备案&#xff0c;拿到了上市的钥匙。丹诺医药目前无收入&#xff0c;2025年前9个月亏损1.15亿。丹诺医药成立以来获得过多次融资&#…

作者头像 李华
网站建设 2026/3/25 9:56:55

王宝强身家上亿,亲哥哥却在村头卖大饼,哥哥的回答太扎心了?

在娱乐圈的璀璨星河中&#xff0c;王宝强宛如一颗耀眼的流星&#xff0c;凭借自身努力从草根逆袭成身家上亿的明星。然而&#xff0c;与之形成鲜明对比的是&#xff0c;他的亲哥哥却在村头卖大饼&#xff0c;这一反差如同一颗石子投入舆论的湖面&#xff0c;激起层层涟漪。王宝…

作者头像 李华
网站建设 2026/4/14 0:21:39

惊艳效果!Qwen3-ASR-1.7B语音识别实测展示

惊艳效果&#xff01;Qwen3-ASR-1.7B语音识别实测展示 你是否好奇&#xff0c;一个开源的语音识别模型&#xff0c;到底能把你的声音转换成多准确的文字&#xff1f;今天&#xff0c;我们就来实测一下Qwen3-ASR-1.7B这个“明星选手”。它号称能听懂52种语言和方言&#xff0c;…

作者头像 李华