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

网站维护总结网站只做程序员

网站维护总结,网站只做程序员,国外商业网站设计,我想建立个网站怎么弄目录 LeetCode:1049. 最后一块石头的重量 II 基本思路 C代码 LeetCode:494. 目标和 基本思路 C代码 LeetCode:474.一和零 基本思路 C代码 LeetCode:1049. 最后一块石头的重量 II 力扣代码链接 文字讲解#xff1a;LeetCode:1049. 最后一块石头的重量 II 视频讲解…目录 LeetCode:1049. 最后一块石头的重量 II 基本思路 C代码 LeetCode:494. 目标和 基本思路 C代码 LeetCode:474.一和零 基本思路 C代码 LeetCode:1049. 最后一块石头的重量 II 力扣代码链接 文字讲解LeetCode:1049. 最后一块石头的重量 II 视频讲解动态规划之背包问题这个背包最多能装多少 基本思路 本题其实就是尽量让石头分成重量相同的两堆相撞之后剩下的石头最小这样就化解成01背包问题了。其中石头的重量为stones[i]物品的价值也为stones[i]对应着01背包里的物品重量weight[i]和物品价值value[i]。 确定dp数组以及下标的含义 dp[j]的含义容量为j的背包最多可以装的价值为 dp[j]。而价值其实也就是背包中能够承载的石头的最大重量。 确定递推公式 01背包的递推公式为dp[j] max(dp[j], dp[j - weight[i]] value[i]);而这里的weight[i]和value[i]实际上都是stone[i]也就是石头的重量。因此递推公式可以写成dp[j] max(dp[j], dp[j - stones[i]] stones[i]); dp数组如何初始化 既然 dp[j]中的j表示容量那么最大容量重量是多少呢就是所有石头的重量和。根据提示易知我们要求的target其实只是最大重量的一半也就是15000。接下来就是如何初始化dp[j]呢因为重量都不会是负数所以dp[j]都初始化为0就可以了。 vectorint dp(15001, 0); 确定遍历顺序 因为采用的是一维dp数组的方式因此遍历物品的for循环放在外层而变量背包容量大小的for循环放在内层并且要保证内层for循环采用倒序遍历。 for (int i 0; i stones.size(); i) { // 遍历物品for (int j target; j stones[i]; j--) { // 遍历背包dp[j] max(dp[j], dp[j - stones[i]] stones[i]);} }最后dp[target]就是容量为target的背包所能背的最大重量。在计算target的时候target sum / 2 因为是向下取整所以sum - dp[target] 一定是大于等于dp[target]的。 C代码 class Solution { public:int lastStoneWeightII(vectorint stones) {vectorint dp(15001, 0);int sum 0;for (int i 0; i stones.size(); i) sum stones[i];int target sum / 2;for (int i 0; i stones.size(); i) { // 遍历物品for (int j target; j stones[i]; j--) { // 遍历背包dp[j] max(dp[j], dp[j - stones[i]] stones[i]);}}return sum - dp[target] - dp[target];} }; LeetCode:494. 目标和 力扣代码链接 文字讲解LeetCode:494. 目标和 视频讲解动态规划之背包问题装满背包有多少种方法 基本思路 最容易想到的就是回溯算法但是使用回溯算法容易超时。 class Solution { private:vectorvectorint result;vectorint path;void backtracking(vectorint candidates, int target, int sum, int startIndex) {if (sum target) {result.push_back(path);}// 如果 sum candidates[i] target 就终止遍历for (int i startIndex; i candidates.size() sum candidates[i] target; i) {sum candidates[i];path.push_back(candidates[i]);backtracking(candidates, target, sum, i 1);sum - candidates[i];path.pop_back();}} public:int findTargetSumWays(vectorint nums, int S) {int sum 0;for (int i 0; i nums.size(); i) sum nums[i];if (S sum) return 0; // 此时没有方案if ((S sum) % 2) return 0; // 此时没有方案两个int相加的时候要格外小心数值溢出的问题int bagSize (S sum) / 2; // 转变为组合总和问题bagsize就是要求的和// 以下为回溯法代码result.clear();path.clear();sort(nums.begin(), nums.end()); // 需要排序backtracking(nums, bagSize, 0, 0);return result.size();} };我们如果使用动态规划的方法可以假设正数的总和为x负数的总和为y所有元素的绝对值之和为sum目标和为target。那么易得 可以得到 这里的x实际上就是背包容量BagSize。和之前的方法不同的地方在于前面的题是求容量为j的背包最多能装下多少。而这个题目是求装满容量为j的背包一共有多少种方法。 确定dp数组以及下标的含义 dp[j]表示装满容量为j的背包一共有dp[j]种方法。 确定递推公式 dp[j] dp[j] dp[j-nums[i]],可以理解为不包含物品i为上一次循环中的dp[j]和包含物品i的dp[j-nums[i]]。 dp数组如何初始化 这里dp[0] 同样初始为1 ,即装满背包为0的方法有一种放0件物品。并且如果背包容量j和物品0的大小相同此时dp[nums[i]] 1。 确定遍历顺序 遍历物品放在外循环遍历背包在内循环且内循环倒序为了保证物品只使用一次。 C代码 class Solution { public:int findTargetSumWays(vectorint nums, int target) {int sum 0;for (int i 0; i nums.size(); i) sum nums[i];if (abs(target) sum) return 0; // 此时没有方案if ((target sum) % 2 1) return 0; // 此时没有方案int bagSize (target sum) / 2;vectorint dp(bagSize 1, 0);dp[0] 1;for (int i 0; i nums.size(); i) {for (int j bagSize; j nums[i]; j--) {dp[j] dp[j - nums[i]];}}return dp[bagSize];} }; LeetCode:474.一和零 力扣代码链接 文字讲解LeetCode:474.一和零 视频讲解动态规划之背包问题装满这个背包最多用多少个物品 基本思路 这个题目依旧是一个01背包问题。但是需要统计每个字符串元素的0和1的数量也就是两个维度的背包。 确定dp数组以及下标的含义 dp[i][j]最多有i个0和j个1的strs的最大子集的大小为dp[i][j]。 确定递推公式 dp[i][j] 可以由前一个strs里的字符串推导出来strs里的字符串有zeroNum个0oneNum个1。dp[i][j] 就可以是 dp[i - zeroNum][j - oneNum] 1。 所以递推公式dp[i][j] max(dp[i][j], dp[i - zeroNum][j - oneNum] 1); dp数组如何初始化 01背包的dp数组初始化为0就可以。因为物品价值不会是负数初始为0保证递推的时候dp[i][j]不会被初始值覆盖。 确定遍历顺序 在本题中物品就是strs里的字符串背包容量是题目描述中的m和n分别代表了dp数组的两个维度。 for (string str : strs) { // 遍历物品int oneNum 0, zeroNum 0;for (char c : str) {if (c 0) zeroNum;else 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);}} } 举例推导dp数组 以输入[10,0001,111001,1,0]m 3n 3为例 C代码 class Solution { public:int findMaxForm(vectorstring strs, int m, int n) {vectorvectorint dp(m 1, vectorint (n 1, 0)); // 默认初始化0for (string str : strs) { // 遍历物品int oneNum 0, zeroNum 0;for (char c : str) {if (c 0) zeroNum;else 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];} };
文章转载自:
http://www.morning.mkfr.cn.gov.cn.mkfr.cn
http://www.morning.sftrt.cn.gov.cn.sftrt.cn
http://www.morning.nclbk.cn.gov.cn.nclbk.cn
http://www.morning.lctrz.cn.gov.cn.lctrz.cn
http://www.morning.ywrt.cn.gov.cn.ywrt.cn
http://www.morning.tmfm.cn.gov.cn.tmfm.cn
http://www.morning.gjtdp.cn.gov.cn.gjtdp.cn
http://www.morning.zkdmk.cn.gov.cn.zkdmk.cn
http://www.morning.hsflq.cn.gov.cn.hsflq.cn
http://www.morning.krdb.cn.gov.cn.krdb.cn
http://www.morning.twwzk.cn.gov.cn.twwzk.cn
http://www.morning.llqch.cn.gov.cn.llqch.cn
http://www.morning.lwbhw.cn.gov.cn.lwbhw.cn
http://www.morning.qjxkx.cn.gov.cn.qjxkx.cn
http://www.morning.nlgyq.cn.gov.cn.nlgyq.cn
http://www.morning.zdmlt.cn.gov.cn.zdmlt.cn
http://www.morning.yhglt.cn.gov.cn.yhglt.cn
http://www.morning.ymhzd.cn.gov.cn.ymhzd.cn
http://www.morning.lgphx.cn.gov.cn.lgphx.cn
http://www.morning.lbcbq.cn.gov.cn.lbcbq.cn
http://www.morning.mnwmj.cn.gov.cn.mnwmj.cn
http://www.morning.kjfqf.cn.gov.cn.kjfqf.cn
http://www.morning.ljtwp.cn.gov.cn.ljtwp.cn
http://www.morning.drkk.cn.gov.cn.drkk.cn
http://www.morning.qttft.cn.gov.cn.qttft.cn
http://www.morning.bfcrp.cn.gov.cn.bfcrp.cn
http://www.morning.rqwwm.cn.gov.cn.rqwwm.cn
http://www.morning.pwqyd.cn.gov.cn.pwqyd.cn
http://www.morning.qdzqf.cn.gov.cn.qdzqf.cn
http://www.morning.sqfnx.cn.gov.cn.sqfnx.cn
http://www.morning.gcqdp.cn.gov.cn.gcqdp.cn
http://www.morning.dxtxk.cn.gov.cn.dxtxk.cn
http://www.morning.xtdtt.cn.gov.cn.xtdtt.cn
http://www.morning.kndt.cn.gov.cn.kndt.cn
http://www.morning.nyplp.cn.gov.cn.nyplp.cn
http://www.morning.qkzdc.cn.gov.cn.qkzdc.cn
http://www.morning.kgxyd.cn.gov.cn.kgxyd.cn
http://www.morning.ltqzq.cn.gov.cn.ltqzq.cn
http://www.morning.rdng.cn.gov.cn.rdng.cn
http://www.morning.ljbpk.cn.gov.cn.ljbpk.cn
http://www.morning.zhmgcreativeeducation.cn.gov.cn.zhmgcreativeeducation.cn
http://www.morning.nbsbn.cn.gov.cn.nbsbn.cn
http://www.morning.jbtlf.cn.gov.cn.jbtlf.cn
http://www.morning.srcth.cn.gov.cn.srcth.cn
http://www.morning.xcjbk.cn.gov.cn.xcjbk.cn
http://www.morning.nnjq.cn.gov.cn.nnjq.cn
http://www.morning.nbgfz.cn.gov.cn.nbgfz.cn
http://www.morning.fkmrj.cn.gov.cn.fkmrj.cn
http://www.morning.wnjbn.cn.gov.cn.wnjbn.cn
http://www.morning.jrdbq.cn.gov.cn.jrdbq.cn
http://www.morning.dhrbj.cn.gov.cn.dhrbj.cn
http://www.morning.krhkn.cn.gov.cn.krhkn.cn
http://www.morning.njstzsh.com.gov.cn.njstzsh.com
http://www.morning.rfwkn.cn.gov.cn.rfwkn.cn
http://www.morning.nchlk.cn.gov.cn.nchlk.cn
http://www.morning.tlpsd.cn.gov.cn.tlpsd.cn
http://www.morning.cfhwn.cn.gov.cn.cfhwn.cn
http://www.morning.ryjqh.cn.gov.cn.ryjqh.cn
http://www.morning.tsynj.cn.gov.cn.tsynj.cn
http://www.morning.nrbcx.cn.gov.cn.nrbcx.cn
http://www.morning.prxqd.cn.gov.cn.prxqd.cn
http://www.morning.qfzjn.cn.gov.cn.qfzjn.cn
http://www.morning.nktgj.cn.gov.cn.nktgj.cn
http://www.morning.qjrjs.cn.gov.cn.qjrjs.cn
http://www.morning.fmtfj.cn.gov.cn.fmtfj.cn
http://www.morning.rdng.cn.gov.cn.rdng.cn
http://www.morning.kgxrq.cn.gov.cn.kgxrq.cn
http://www.morning.xwbwm.cn.gov.cn.xwbwm.cn
http://www.morning.mznqz.cn.gov.cn.mznqz.cn
http://www.morning.qyxwy.cn.gov.cn.qyxwy.cn
http://www.morning.ckhyj.cn.gov.cn.ckhyj.cn
http://www.morning.ndyrb.com.gov.cn.ndyrb.com
http://www.morning.ftznb.cn.gov.cn.ftznb.cn
http://www.morning.srky.cn.gov.cn.srky.cn
http://www.morning.wchcx.cn.gov.cn.wchcx.cn
http://www.morning.rjjjk.cn.gov.cn.rjjjk.cn
http://www.morning.mfzyn.cn.gov.cn.mfzyn.cn
http://www.morning.qineryuyin.com.gov.cn.qineryuyin.com
http://www.morning.jqllx.cn.gov.cn.jqllx.cn
http://www.morning.pmmrb.cn.gov.cn.pmmrb.cn
http://www.tj-hxxt.cn/news/273906.html

相关文章:

  • 移动应用网站开发wordpress证书安装
  • 第一个做电子商务的网站物联网应用前景
  • 精品下载站上海室内软装设计公司排名
  • 大学生网站设计作业动画香河县最新消息
  • 心馨人生网站建设设计东莞网站建设曼哈顿新科
  • 企业网站建设一般要素网站建设的图片
  • 淘宝客怎么做网站建筑设计资质加盟
  • 西宁做腋臭北大网站lwordpress改了固定链接
  • 王者荣耀网站开发目的什么公司设计网站建设
  • 做公司网站怎么删除图片wordpress前端可视化编辑器
  • 我的家乡网站设计模板洛阳电商网站建设
  • 订制网站建设做网站有视频教吗
  • 游戏网站建设方案书厦门网络推广推荐
  • 网站开发历史做网站需要准备什么条件
  • wordpress 删除图片厦门seo顾问屈兴东
  • 网站推广的具体内容运城手机网站制作
  • 网站是什么样子的wordpress手动加水印
  • 网站开发合同 doc百度公司介绍
  • 济宁网站建设优化亿峰网站绑定域名
  • 泉州 网站建设资料网站模板
  • 网站有哪些推荐网站不用备案
  • 网页设计制作网站论文房产网怎么查到房产
  • 网站制作策划方案英文网站建设580
  • 网站被挂了黑链猎头公司注册条件
  • 微信小程序网站建设推广网站开发工具 比较好
  • 网站如何盈利流量费新鸿儒网站
  • 单页网站产品上海技术公司做网站
  • 深圳 高端 建站公司哈尔滨一恒建设
  • 货运代理东莞网站建设三亚8名男女深夜被抓
  • 网站公司维护热烈祝贺网站上线