当前位置: 首页 > news >正文

网站关键字统计淄博高端网站建设

网站关键字统计,淄博高端网站建设,邯郸市嘉禾网络科技,如何把动态图发网站做头像题目链接:416. 分割等和子集 文章讲解:代码随想录 416. 分割等和子集讲解 视频讲解:动态规划之背包问题,这个包能装满吗?| LeetCode:416.分割等和子集 思路和解法 题目: 给你一个 只包含正整…

题目链接:416. 分割等和子集

文章讲解:代码随想录 416. 分割等和子集讲解

视频讲解:动态规划之背包问题,这个包能装满吗?| LeetCode:416.分割等和子集

思路和解法

题目:
给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。
想法:
第一次接触背包问题,思路还是挺巧妙的,而且通过今天这道题目我感觉熟悉以后可能很多问题都可以转化为背包问题,纯猜测的。01背包二维数组的方法更容易理解,但是一维数组似乎更实用一些,区别也不大,注意一下外层循环遍历物品,更新dp数组从后向前更新即可。

class Solution {
public:
//核心思路:如果能凑出和为所有数字求和的一半,就说明可以分割成功
//凑的过程简化为01背包问题,每个数字只能选一次,每个数字就是物品价值,同时也是物品重量
//假设有一个背包容量为sum/2,就看数字能不能刚好填满背包
//其实直接想似乎不需要价值,但因为背包问题有价值,那就不妨假设数字同时也是物品价值bool canPartition(vector<int>& nums) {//数组长度<=200 数字<=100,求和就小于等于20000,一半就小于等于10000// vector<int> dp(10001, 0);//先判断求和是否是偶数int sum = 0;for (int i = 0; i < nums.size(); i++) {sum += nums[i];}if (sum % 2 == 1) return false;int target = sum / 2;vector<int> dp(target + 1, 0);//一维数组 背包问题 外层循环遍历物品 一维数组要从后往前遍历 防止一个物品多次加入for (int i = 0; i < nums.size(); i++) {//背包空间要大于等于当前物品重量 才考虑可能放入for (int j = target; j >= nums[i]; j--) {//不放入当前物品的最大价值 和 放入当前物品后剩余空间能放的最大价值dp[j] = max(dp[j], dp[j - nums[i]] + nums[i]);}}if (dp[target] == target) return true;return false;}
};
http://www.yayakq.cn/news/755802/

相关文章:

  • 广安发展建设集团门户网站wordpress主题函数CHM
  • 媒体发稿网站开发做淘宝客如何引出图片到网站
  • 京东网站建设策划书建设部网站监理变更
  • 个人网站 备案 类型网络推广公司名字
  • 网站修改了关键词被降权哪家公司做网站不错
  • discuz 分类网站做非物质文化遗产网站的风险
  • 华强北网站建设公司滨州 网站开发
  • VS2010做网站登录页面步骤wordpress 友情链接小工具
  • 网站建设经费的请示安全的网站建设
  • 做类似知乎网站3d人物建模软件
  • 如何知道一个网站是用什么做的wordpress 批量定时发布
  • wordpress数据库插件seo综合查询国产
  • php网站留言板模板下载建设网站域名有了还要什么
  • 网站建设管理要求shopify建站费用
  • 百度云服务器建设网站咸阳网站建设推广
  • 青峰集团响应式网站重庆网上找工作哪个网站好
  • 校园文化建设图片网站做化学合成的网站有哪些
  • 黑龙省建设厅网站首页界面设计图片 作品
  • 蔬菜类网站建设规划书快速搭建电子商务网站
  • wordpress 建站赚钱平面广告设计图片海报
  • 抚州市临川区建设局网站怎样查网站有没有做CDN加速
  • 做推广网站费用搜索引擎营销就是seo
  • 什么公司做企业网站如何做360网站的排名
  • 中山企业网站制作公司修改wordpress热门文章的数量
  • 公文写作网站电商平台开发报价
  • 个人建网站步骤做商城网站数据库分类该有哪些
  • 长春做网站的电话做视频网站怎么看不会卡
  • 如何给网站做权重协会网站建设目的
  • 个人和做网站方签合同模板东莞网站建设求职简历
  • 汉源网站建设WordPress不同尺寸图片