贪心算法和01背包算法

该实验报告详细探讨了贪心算法和01背包问题,通过数学形式和非形式化方式描述问题。01背包问题采用动态规划求解,状态转移方程为dp[j] = max(dp[j], dp[j - w[i]] +1)。贪心算法则选择每次加入最小重量的物品。实验分析中指出,01背包算法的时间复杂度为O(nm),而贪心算法的时间复杂度为O(nlogn)。完整的源码可在github上找到。" 119473930,10542404,在虚拟机中搭建FTP服务器指南,"['虚拟机', 'FTP服务', '服务器配置', '数据传输工具', 'Linux操作系统']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

贪心算法和01背包算法

实验报告

课程名称 《算法分析与设计》
实验名称 贪心算法和01背包算法

1.问题

[描述算法问题,首选形式化方式(数学语言),其次才是非形式化方式(日常语言)]
给你一个空间,告诉你这个空间的最大储存空间,告诉你一系列物品且知道每件物品的价值和占用空间,每件物品只能取一遍,问这个这个存储空间存放的东西数量最大是多少
在这里插入图片描述

2.解析

[问题的理解和推导,可用电子版直接在此编写,也可用纸笔推导,拍照嵌入本文档]
思路:01背包(dp)
dp[j]就表示当下表为j的时候所能装载的最大数量.
dp的状态转移方程dp[j] = max(dp[j], dp[j - w[i]] +1);(i从1~n 也就是所有的物品)
思路:贪心
想法:每次都选择最小的重量添加到其中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.设计

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值