可以记录路径,有时间再完善

# -*- coding:utf-8 -*-
def bag(n, c, w, v):res = [[0 for j in range(c + 1)] for i in range(n + 1)]for j in range(c + 1):res[0][j] = 0for i in range(1, n + 1):for j in range(1, c + 1):res[i][j] = res[i - 1][j]if j >= w[i - 1] and res[i][j] < res[i - 1][j - w[i - 1]] + v[i - 1]:res[i][j] = res[i - 1][j - w[i - 1]] + v[i - 1]print resreturn resdef show(n, c, w, res):print '最大价值为:', res[n][c]x = [False for i in range(n)]j = ci = nwhile i > 0:if res[i][j] > res[i - 1][j]:x[i - 1] = Truej -= w[i - 1]i -= 1else:i -= 1print '选择的物品为:'for i in range(n):if x[i]:print '第', i, '个'if __name__ == '__main__':n = 5c = 17w = [2, 2, 6, 5, 4]v = [2, 2, 6, 5, 4]res = bag(n, c, w, v)show(n, c, w, res)

01背包问题python实现相关推荐

  1. 0-1背包问题python实现

    0-1背包问题 ACWings题目链接:https://www.acwing.com/problem/content/2/ 不会的小伙伴可以看一下视频:https://www.bilibili.com ...

  2. dp 动态规划 01背包问题 Python

    参考学习网址: https://www.bilibili.com/video/av33930433?from=search&seid=10637513335818789097 https:// ...

  3. python回溯方法的模板_Python基于回溯法子集树模板解决0-1背包问题实例

    本文实例讲述了Python基于回溯法子集树模板解决0-1背包问题.分享给大家供大家参考,具体如下: 问题 给定N个物品和一个背包.物品i的重量是Wi,其价值位Vi ,背包的容量为C.问应该如何选择装入 ...

  4. python实现动态规划0-1背包问题

    一.动态规划算法介绍 动态规划算法通常用于求解具有某种最优性质的问题.在这类问题中,可能会有许多可行解.每一个解都对应于一个值,我们希望找到具有最优值的解.动态规划算法与分治法类似,其基本思想也是将待 ...

  5. 01背包问题 动态规划求解方法 动态方程的详细解释 能理解的解释(附python代码)

    01背包问题属于组合优化问题:假设你要出门旅游,你现在有一个书包,这个书包的容量(capacity)有限,有很多物品如牙刷.防晒霜.雨伞.水杯等等,但书包装不下所有物品,因此我们必须有所取舍.那么通常 ...

  6. 01背包python解法_0-1背包问题及Python代码实现

    1.简介 假设我们有n件物品,分别编号为1, 2...n.其中编号为i的物品价值为vi,它的重量为wi.为了简化问题,假定价值和重量都是整数值.现在,假设我们有一个背包,它能够承载的重量是W.现在,我 ...

  7. 0-1背包问题及python实现

    0-1背包问题及python实现 1. 问题提出 ​ 0-1背包问题是动态规划中入门的经典题型,掌握0-1背包问题背后的本质有助于更好地理解动态规划问题,话不多说,首先来看看0-1背包问题究竟是什么吧 ...

  8. 0-1背包问题动态规划模型的Python解法

    0-1背包问题动态规划模型的Python解法 1.01背包问题 2.Python解决方案 3.01背包问题例题 1.01背包问题 背包问题(Knapsack problem)是一种组合优化的NP完全问 ...

  9. 0-1背包问题及Python代码实现

    原文:https://www.jianshu.com/p/25f4a183ede5 https://blog.csdn.net/your_answer/article/details/79274789 ...

最新文章

  1. python画图代码七彩蟒蛇-Python实现七彩蟒蛇绘制实例代码
  2. 在ubuntu16.04中安装apache2+modsecurity以及自定义WAF规则详解
  3. 前阿里资深运营王殿进:SaaS产品经理所面临的苦恼
  4. hdu-Cube(三位树状数组)
  5. iOS开发——MBProgressHUD 与 SVProgressHUD iOS提示框的优缺点
  6. Oracle工具使用(export,import,sqlldr中文帮助及实例))
  7. java递归统计一个文件夹含子文件夹里文件不同后缀的出现次数
  8. sql limit 子句_SQL Server中的FOR XML PATH子句
  9. Ubuntu下如何使用虚拟机安装WindowsXP?(2)【转】
  10. JAVA-idea中maven配置
  11. 解压rar_【RAR安卓】RAR解压v5.91.build93去广告版,解压多种压缩包 与WinRAR完美兼容!...
  12. 如何减小数据库日志文件.ldf
  13. 汇编 LED驱动 烧写bin文件到SD卡
  14. 网络安全系列-二十五: PCAP文件格式详解及读取PCAP文件源码示例
  15. 黑莓9930/9970/99xx一键刷机包
  16. 中医针灸学综合练习题库【2】
  17. NFC(Near Field Communication,近场通信)相关
  18. CPU有桌面版和服务器版,知识普及:服务器CPU和普通CPU有何不同
  19. android中app分享小程序卡片及跳转回app
  20. 由点及面,一叶知秋----集合大家族

热门文章

  1. 关于移动端点击事件的问题
  2. 捡起JavaScript(3)
  3. 【leetcode】Permutations
  4. javascript学习笔记(七) 函数
  5. “云时代架构”经典文章阅读感想八
  6. 使用多线程完成Socket
  7. 《软件需求最佳实践》阅读笔记02
  8. C语言之结构体(2)
  9. 2013应届毕业生“百度”校招应聘总结
  10. 小型开发团队的测试误区