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

网站建设 翻译企业网站推广可以选择哪些方法

网站建设 翻译,企业网站推广可以选择哪些方法,秦皇岛住建局官网,宝塔搭建网站教程文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:这道题当中数字可以多次使用,那么我们在递归语句当中不能直接找下一个candidate的元素&…

文章目录

  • 一、题目
  • 二、解法
  • 三、完整代码

所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。

一、题目

在这里插入图片描述

二、解法

  思路分析:这道题当中数字可以多次使用,那么我们在递归语句当中不能直接找下一个candidate的元素,需要不断累加重复元素,直到它>=target,才能进入下一个循环,同时需要做剪枝优化,循环只在这个条件下进行sum+candidates[i] <= target。这道题的框架基于【算法与数据结构】216、LeetCode组合总和 III修改。
在这里插入图片描述

  程序如下

class Solution {
private:vector<vector<int>> result;     // 结果合集vector<int> path;void backtracking(const vector<int>& candidates, const int target, int sum, int startIndex) {if (sum > target) return;    // 剪枝if (sum == target) {result.push_back(path);return;}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);  // 递归sum -= candidates[i];path.pop_back();    // 回溯,撤销处理的节点}}
public:vector<vector<int>> combinationSum(vector<int>& candidates, int target) {vector<int> nums = candidates;		// 对candidates数组升排序sort(nums.begin(), nums.end());backtracking(nums, target, 0, 0);return result;}
};

复杂度分析:

  • 时间复杂度: O ( n ∗ 2 n ) O(n*2^n) O(n2n)
  • 空间复杂度: O ( t a r g e t ) O(target) O(target)

三、完整代码

# include <iostream>
# include <string>
# include <vector>
# include <algorithm>
using namespace std;class Solution {
private:vector<vector<int>> result;     // 结果合集vector<int> path;void backtracking(const vector<int>& candidates, const int target, int sum, int startIndex) {if (sum > target) return;    // 剪枝if (sum == target) {result.push_back(path);return;}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);  // 递归sum -= candidates[i];path.pop_back();    // 回溯,撤销处理的节点}}
public:vector<vector<int>> combinationSum(vector<int>& candidates, int target) {vector<int> nums = candidates;		// 对candidates数组升排序sort(nums.begin(), nums.end());backtracking(nums, target, 0, 0);return result;}
};int main() {vector<int> candidates = { 2, 3, 6, 7 };int target = 7;Solution s1;vector<vector<int>> result = s1.combinationSum(candidates, target);for (vector<vector<int>>::iterator it = result.begin(); it != result.end(); it++) {for (vector<int>::iterator jt = (*it).begin(); jt != (*it).end(); jt++) {cout << *jt << " ";}cout << endl;}system("pause");return 0; 
}

end

http://www.hkea.cn/news/404259/

相关文章:

  • wordpress适合门户网站吗怎么营销自己的产品
  • 常用的网站类型有哪些seo优化专员编辑
  • 网站专题框架怎么做海阳seo排名
  • 手机网站代码下载黄页网站推广服务
  • 做网站前端多少钱在线bt种子
  • wordpress+模版+推荐专业网站seo推广
  • 浦项建设公司员工网站2023免费推广入口
  • 如何查询某个网站的设计公司最新推广注册app拿佣金
  • 八宝山做网站公司打广告
  • wordpress vip查看插件南宁seo费用服务
  • 建站之星模板怎么设置手机如何做网站
  • 上海公司网站制作价格西安百度关键词排名服务
  • 长沙网页制作开发公司aso优化方案
  • 深圳罗湖网站制作成人电脑基础培训班
  • 无锡网站制作咨询深圳网站设计十年乐云seo
  • 大连城市建设网站seo优化顾问服务阿亮
  • 福州 网站建设沈阳seo关键词排名优化软件
  • 做网站还要买服务器吗镇江seo
  • 专门做特价的网站优化排名案例
  • 网站建设的一些问题友链交易交易平台
  • 创业初期要建立公司的网站吗seo排名优化代理
  • 做网站全屏尺寸是多少钱站长工具查询系统
  • 做企业平台的网站有哪些手机网站制作教程
  • 免费行情的软件大全下载北京公司排名seo
  • 网站联系方式要素qq群推广链接
  • div css 网站模板免费的云服务器有哪些
  • 35互联做网站好吗网店运营工作内容
  • 网站建设模拟软件营销培训课程内容
  • 深圳建网站兴田德润专业2023年最新新闻简短摘抄
  • 学校网站怎么查询录取百度相册登录入口