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

四川省示范校建设网站网站中新颖的功能

四川省示范校建设网站,网站中新颖的功能,上海家装设计网站,m域名网站安全吗文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析#xff1a;本题仍然使用回溯算法的一般结构。加入了一个判断是否是回文串的函数#xff0c;利用起始和终止索引进… 文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析本题仍然使用回溯算法的一般结构。加入了一个判断是否是回文串的函数利用起始和终止索引进行判断字符串使用引用输入 减少传参的时间开销。将开始索引大于等于字符串长度作为终止条件表示已经找到一个回文串的组合。此外进一步改进算法的性能可以建立一个查找数组提前算出分割的子串是否为回文串使用时直接判断即可。 void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择本层集合中元素树中节点孩子的数量就是集合的大小) {处理节点;backtracking(路径选择列表); // 递归回溯撤销处理结果} }程序如下 class Solution { private:vectorvectorstring result;vectorstring path;bool isSymmetry(const string s, const int start, const int end) {bool flag true;for (int i start, j end; i j; i, j--) {if (s[i] ! s[j]) {flag false;break;}}return flag;}void backtracking(const string s, int startIndex) {if (startIndex s.size()) {result.push_back(path);return;}for (int i startIndex; i s.size(); i) {if (isSymmetry(s, startIndex, i)) { // 是回文串才加入结果数组string str s.substr(startIndex, i - startIndex 1);path.push_back(str);}else { // 不是回文串跳过continue;}backtracking(s, i 1);path.pop_back();}} public:vectorvectorstring partition(string s) {backtracking(s, 0);return result;} };复杂度分析 时间复杂度 O ( n ∗ 2 n ) O(n*2^n) O(n∗2n) n代表字符串长度。空间复杂度 O ( n 2 ) O(n^2) O(n2)。 三、完整代码 # include iostream # include string # include vector using namespace std;class Solution { private:vectorvectorstring result;vectorstring path;bool isSymmetry(const string s, const int start, const int end) {bool flag true;for (int i start, j end; i j; i, j--) {if (s[i] ! s[j]) {flag false;break;}}return flag;}void backtracking(const string s, int startIndex) {if (startIndex s.size()) {result.push_back(path);return;}for (int i startIndex; i s.size(); i) { // 剪枝优化if (isSymmetry(s, startIndex, i)) { // 是回文串才加入结果数组string str s.substr(startIndex, i - startIndex 1);path.push_back(str);}else { // 不是回文串跳过continue;}backtracking(s, i 1);path.pop_back();}} public:vectorvectorstring partition(string s) {backtracking(s, 0);return result;} };int main() {string s aab;Solution s1;vectorvectorstring result s1.partition(s);for (vectorvectorstring::iterator it result.begin(); it ! result.end(); it) {for (vectorstring::iterator jt (*it).begin(); jt ! (*it).end(); jt) {cout *jt ;}cout endl;}system(pause);return 0; }end
http://www.hkea.cn/news/14359276/

相关文章:

  • 可信网站行业验证必须做吗建设部官网网站
  • python做网站用什么软件网站建设文本居中代码
  • 秦皇岛seo网站推广安徽建站优化
  • 焦作网站开发公司电话广东智慧团建系统登录入口
  • 自己建站的网站网站顶部地图代码怎么做
  • 宁波网站设计服务收费价格网站开发公司地址
  • 广州 环保 凡人网站建设p2p网站建设规划
  • 郴州网站网站建设互联网站备案
  • 网站元素优化 移动站企业管理培训课程简介
  • 爱网站长尾关键词挖掘工具网页浏览器英文缩写
  • 宁波微网站开发中国建设协会官网
  • 网站建设签收单系统开发方案设计(模板) 免费下载
  • 二维码生成器网站首都医科大学网站建设
  • 建设工程监理招标网站做网站的书籍推荐
  • 网站备案才能使用南通网站定制哪家好
  • 合肥网站建设需要多东莞哪里建设网站好
  • 的的平台服务电话seo网站优化培训怎么样
  • 系统开发生命周期法的优点表现在线排名优化工具
  • 网站页面设计说明邯郸公司网站建设
  • 服装外贸网站建设网站建设流程和方法
  • 图书馆网站建设策划网站建设服务费
  • 服装 多语言 网站源码怎么做电影流量网站吗
  • 秦皇岛做网站优化公司江门网站推广
  • 郑州专业公司网站制作公司网站建设教程(项目式)
  • 网站建设搜索优化app推广新闻营销外贸开发网站建设
  • 免费代理上网网站创建一家公司需要什么过程
  • 成都网站制作收费怎么做汽车网站推广方案
  • 网页特效代码网站wordpress 4.8.2
  • 石家庄哪个公司做网站好用服务器ip做网站域名
  • 沧州国外网站建设手机触屏网站开发教程