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

做外贸有哪些好的网站有哪些推广关键词怎么设置

做外贸有哪些好的网站有哪些,推广关键词怎么设置,如何找到免费的网站建设,老城网站建设backtrack(k,n,sum,i1); backtrack(k,n,sum,i); 在 C 中,递增运算符 i 和表达式 i1 之间有显著的区别: i 是后置递增运算符,表示先使用 i 的当前值,然后将 i 加 1。i1 是一个简单的算术运算,返回 i 的当前值加 1&…
backtrack(k,n,sum,i+1);
backtrack(k,n,sum,i++);

在 C++ 中,递增运算符 i++ 和表达式 i+1 之间有显著的区别:

  • i++ 是后置递增运算符,表示先使用 i 的当前值,然后将 i 加 1。
  • i+1 是一个简单的算术运算,返回 i 的当前值加 1,但不改变 i 的值。
backtrack(k, n, sum, i + 1);  // 正确, 传递 i 的下一值,但不改变 i 的值
backtrack(k, n, sum, i++);    // 错误, 传递当前 i 的值,然后 i 自增1

详细描述

  1. backtrack(k, n, sum, i + 1);这里传递了 i 的值加 1,但是 i 本身的值不会改变。所以,这并不会对当前递归状态下的 i 产生影响。
  2. backtrack(k, n, sum, i++);在这种情况下,i++ 是后置递增运算符,这意味着当前函数调用传递的是 i 的原始值,然后 i 自增 1。这可能是不想要的效果,特别是在递归函数调用中,因为它在修改 i 之后继续使用它,可能会导致索引管理混乱。

正确的方法:

一般来说,在递归和回溯中,你希望传递给下一层递归的是当前索引的下一个值而不是原始值并自增。所以,使用 i + 1 更加合适。

案例:

class Solution {
public:vector<int> path;vector<vector<int>> res;void backtrack(int k,int n,int sum,int start){if(path.size()==k){if(sum==n){res.push_back(path);}return;}for(int i=start;i<=9;i++){sum+=i;path.push_back(i);backtrack(k,n,sum,i++);sum-=i;path.pop_back();}}vector<vector<int>> combinationSum3(int k, int n) {backtrack(k,n,0,1);return res;}
};


通过调试发现:

时间和空间复杂度

 

http://www.zhongyajixie.com/news/57574.html

相关文章:

  • 网站备案的影响全国最新实时大数据
  • 电商网站模板免费正规的计算机培训机构
  • 两个网站链接如何做东莞做网站公司
  • wordpress 管理员权限丢失百度快照优化排名
  • 效果好网站建设哪家好深圳网络推广团队
  • 网站后台管理员做链接重庆网站优化
  • 做网站的图哪来查关键词的排名工具
  • 网站引用优酷安徽网站关键字优化
  • 网页设计实训报告总结心得体会天津抖音seo
  • node.js网站开发框架品牌策略有哪些
  • 如何缩小wordpress文字边距windows优化大师功能
  • 网站建设包括哪些内容培训平台有哪些
  • 网站建设企业公司音乐接单推广app平台
  • 专业建设验收网站网页制作成品
  • the 7 wordpress东莞seo广告宣传
  • 郴州做网站公司网站优化网站优化
  • 阿里云备案网站名称seoaoo
  • 营销型网站建设要懂代码吗最新实时新闻
  • wordpress音乐插件怎么用关键词优化意见
  • 东营市建设管理局网站seo分析常用的工具是
  • 做空压机网站百度推广渠道代理
  • 做的网站怎么联网关键词排名查询
  • 日照网站建设seo优化建网站
  • 北方明珠网站建设网站优化策略
  • 有没有专门做宝宝用品的网站竞价恶意点击立案标准
  • 兰州网站建设报价大型营销型网站制作
  • 建设信息网站产品线上推广方案
  • 网站建设 计入哪个科目推广普通话手抄报内容大全资料
  • 整站seo排名外包软文什么意思范例
  • 太原做网站的通讯公司有哪些搜索引擎营销简称为