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

产品推广方案范文商城网站优化

产品推广方案范文,商城网站优化,深圳设计公司电话,网站可分为哪两种类型目录 474. 一和零 518. 零钱兑换 II 377. 组合总和 Ⅳ 322. 零钱兑换 总结&#xff1a; 474. 一和零 这道题和前面的思路一样&#xff0c;就是需要将背包扩展到二维。 class Solution { public:int findMaxForm(vector<string>& strs, int m, int n) {vector&l…

 

目录

474. 一和零

518. 零钱兑换 II 

377. 组合总和 Ⅳ 

 322. 零钱兑换

 总结:


474. 一和零

 

这道题和前面的思路一样,就是需要将背包扩展到二维。

class Solution {
public:int findMaxForm(vector<string>& strs, int m, int n) {vector<vector<int>> dp(m+1,vector<int>(n+1,0));for(auto s:strs){int oneNum=0,zeroNum=0;for(auto c:s){if(c=='0')  zeroNum++;else if(c=='1') oneNum++;}for(int i=m;i>=zeroNum;i--){for(int j=n;j>=oneNum;j--){dp[i][j]=max(dp[i][j],dp[i-zeroNum][j-oneNum]+1);}}}return dp[m][n];}
};

518. 零钱兑换 II 

 

每个硬币可以无限制取,完全背包问题。先确定dp[i]表示的含义,i表示背包容量,dp[j]表示该容量有多少种方法。再确定递推公式,dp[j]+=dp[j-coins[i]];。最后确定遍历顺序,因为每个硬币都可以无限制取,所以j的遍历顺序应该为正序。

注意:在01背包中为了防止元素重复取,采用倒序

class Solution {
public:int change(int amount, vector<int>& coins) {vector<int> dp(amount+1,0);dp[0]=1;for(int i=0;i<coins.size();i++){for(int j=coins[i];j<=amount;j++){dp[j]+=dp[j-coins[i]];}}return dp[amount];}
};


377. 组合总和 Ⅳ 

 

 这题和上题的区别在于这题是排列,上题是组合。组合问题先遍历物品后遍历背包容积,排列问题先遍历背包容积后遍历物品。进入循环里面思考一下就明白了怎么回事了。

class Solution {
public:int combinationSum4(vector<int>& nums, int target) {vector<int> dp(target+1,0);dp[0]=1;//遍历背包容积for(int j=0;j<=target;j++){//遍历物品for(int i=0;i<nums.size();i++){if(j<nums[i] || dp[j]>INT_MAX-dp[j-nums[i]])   continue;dp[j]+=dp[j-nums[i]];}}return dp[target];}
};

 322. 零钱兑换

 

这题的不同之处在于求最小硬币个数,初始化的时候注意初始化为最大值。

class Solution {
public:int coinChange(vector<int>& coins, int amount) {vector<int> dp(amount+1,INT_MAX);dp[0]=0;for(int i=0;i<coins.size();i++){for(int j=coins[i];j<=amount;j++){//如果dp[j-coins[i]]==INT_MAX,将超出int的范围if(dp[j-coins[i]]!=INT_MAX)dp[j]=min(dp[j],dp[j-coins[i]]+1);}}if(dp[amount]==INT_MAX) return -1;return dp[amount];}
};

 总结:

01背包问题和完全背包问题的主要区别是元素是否可以无限制取。

在解决问题的方式上,如果是求组合就先遍历物品再遍历背包容积,如果是求排列就先遍历背包容积再遍历物品。

http://www.yayakq.cn/news/58591/

相关文章:

  • word如何做网站链接磁力宅在线搜种子
  • 网站建设包括哪些方面选择题火山软件开发平台官网
  • 厦门市建设工程质量安全协会网站设计软件cad
  • 厦门网站j建设国微 网站建设
  • iis网站权限怎么设置分类信息网站建设模板
  • 通辽网站建设培训wordpress万能主题
  • 网上商城网站建设怎么样建设公司网站
  • 不用下载的行情网站wordpress强制使用
  • 请seo的人帮做网站排名上海网站建设 方案
  • 智能建站cms管理系统上海建筑设计研究院有限公司
  • 做外贸建网站需要多少钱网站建设新的技术方案
  • 佛山哪家公司建设网站小程序发朋友圈的方法
  • 网站木马文件删除网站建设客户合同范本
  • 推广 高端网站设计黑龙江建设网ca数字证书如何注销
  • 怎么申请自己的网站网址怎样给公司做网站
  • 担路做网站网页制作教程图解
  • 做火情监控网站需要用什么系统地图网站抓取
  • 做个网站需要多久网站设计费用多少盐城网站建设找宇
  • 网站建设开发有什么好处中铁建设门户网登录咋进不去了
  • 网页设计简单的网站官方网站的必要性
  • 网址导航建站现代简约装修
  • 做婚恋网站有哪些中国电信备案网站
  • 备案做电影网站云服务器做网站新手教程
  • 巴中 网站建设分类目录 wordpress
  • 网站开发发展趋势2018电子商务网站建设实训心得体会
  • 海报石家庄网站建设优化
  • 昆明网上商城网站建设济南h5网站建设
  • php网站开发好学吗受欢迎的网站建设
  • 网站备案号要怎么查询建立网站需要钱吗
  • 企业建站系统开源深圳宝安通网站建设