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

怎么做可以访问网站谷歌seo网站优化

怎么做可以访问网站,谷歌seo网站优化,网站建设完毕后怎么加后台,网站建设费用进会计什么科目正整数 n 代表生成括号的对数,请设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 示例 1: 输入:n 3 输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”] 示例 2: 输入&#x…

正整数 n 代表生成括号的对数,请设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。

示例 1:

输入:n = 3
输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]
示例 2:

输入:n = 1
输出:[“()”]

提示:

1 <= n <= 8

法一:直接生成由’(‘和’)'组成的全部可能的字符串,然后再一个一个判断是否合法:

class Solution {
public:vector<string> generateParenthesis(int n) {vector<string> res;string s(2 * n, '\0');getAllParentheses(res, 0, s, n);return res;}private:void getAllParentheses(vector<string> &res, int index, string &s, int n){if (index == 2 * n){if (isValid(s)){res.push_back(s);}return;}s[index] = '(';getAllParentheses(res, index + 1, s, n);s[index] = ')';getAllParentheses(res, index + 1, s, n);}bool isValid(string &s){int cnt = 0;for (char c : s){if (c == '('){++cnt;}else{--cnt;}if (cnt < 0){return false;}}return cnt == 0;}
};

此方法时间复杂度为O(n2 2 n ^{2n} 2n);空间复杂度为O(n),最多递归2n层。很差的方法。

法二:递归求解即可:

class Solution {
public:vector<string> generateParenthesis(int n) {vector<string> res;int leftParenthesisNum = 0;string s(2 * n, '0');getParentheses(res, 0, 0, 0, s, n);return res;}private:void getParentheses(vector<string> &res, int leftNumAll,int finishNum, int index, string &s,int n){if (index == 2 * n){res.push_back(s);}if (leftNumAll < n){s[index] = '(';getParentheses(res, leftNumAll + 1, finishNum, index + 1, s, n);}if (finishNum < leftNumAll){s[index] = ')';getParentheses(res, leftNumAll, finishNum + 1, index + 1, s, n);}}
};

在这里插入图片描述
法三:我们可以把生成的结果看做(a)b,其中a和b分别是合法括号串。我们枚举每个右括号,分别计算枚举过程中a和b的内容,并且可以把特定长度的a和b的内容缓存下来:

class Solution {
public:vector<string> generateParenthesis(int n) {vector<vector<string>> cache(9);cache[0] = {""};return generate(n, cache);}private:vector<string> generate(int n, vector<vector<string>> &cache){if (cache[n].size() != 0){return cache[n];}vector<string> cur;for (int i = 0; i < n; ++i){vector<string> left = generate(i, cache);vector<string> right = generate(n - 1 - i, cache);for (string &sleft : left){for (string &sright : right){cur.push_back("(" + sleft + ")" + sright);}}cache[n] = cur;}return cache[n];}
};

在这里插入图片描述

http://www.jinmujx.cn/news/112892.html

相关文章:

  • 建设银行新版网站上线重庆快速网络推广
  • 西安做网站商标沧州网站运营公司
  • 杭州专业做网站的公司有哪些软文范例800字
  • 为网站做安全认证服务河源seo
  • python做网站稳定吗如何联系百度人工客服电话
  • 中国建设银行个人网站登录网络营销策划方案格式
  • 网站开发工作简历网页设计培训
  • wordpress企业站主题网站seo优化价格
  • wordpress获取所有图片seo程序
  • 百度商桥网站网站推广在哪好
  • 网站开发需要哪些技能学seo如何入门
  • 网站建设简介百度百科怎么创建自己
  • 手机制作购物网站创建个人网站的流程
  • 简历上作品展示网站链接怎么做灰色关键词排名技术
  • 乌鲁木齐建设局官方网站做关键词推广
  • 温州网站推广外包如何建立一个网站
  • 网站做不下去宝塔没有域名直接做网站怎么弄
  • 西安企业网站设计机构域名被墙查询
  • 微信网站建设报价青岛网站建设策划
  • 网站建站公广告推广平台
  • 网站建设群网站免费搭建平台
  • 上饶市建设局有什么网站国内免费域名
  • php 手机网站cms系统免费浏览网站推广
  • 网站开发费计入什么科目指数型基金怎么买
  • 有网络网站打不开软文营销文章案例
  • 网站备案代码seo代理
  • 营销型网站服务免费seo网站优化
  • 个人简单网站页深圳全网营销推广平台
  • 做网站能挣钱吗找个免费的网站
  • 无锡网站seo顾问seo收费低