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

全国优秀作文网站vue做移动端网站与pc端有什么区别

全国优秀作文网站,vue做移动端网站与pc端有什么区别,大学网页制作学什么,免费的发帖收录网站文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:本题仍然使用回溯算法的一般结构。加入了一个判断是否是回文串的函数,利用起始和终止索引进…

文章目录

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

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

一、题目

在这里插入图片描述

二、解法

  思路分析:本题仍然使用回溯算法的一般结构。加入了一个判断是否是回文串的函数,利用起始和终止索引进行判断,字符串使用引用输入, 减少传参的时间开销。将开始索引大于等于字符串长度作为终止条件,表示已经找到一个回文串的组合。此外,进一步改进算法的性能,可以建立一个查找数组,提前算出分割的子串是否为回文串,使用时直接判断即可。

在这里插入图片描述

void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) {处理节点;backtracking(路径,选择列表); // 递归回溯,撤销处理结果}
}

  程序如下

class Solution {
private:vector<vector<string>> result;vector<string> 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:vector<vector<string>> partition(string s) {backtracking(s, 0);return result;}
};

复杂度分析:

  • 时间复杂度: O ( n ∗ 2 n ) O(n*2^n) O(n2n), n代表字符串长度。
  • 空间复杂度: O ( n 2 ) O(n^2) O(n2)

三、完整代码

# include <iostream>
# include <string>
# include <vector>
using namespace std;class Solution {
private:vector<vector<string>> result;vector<string> 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:vector<vector<string>> partition(string s) {backtracking(s, 0);return result;}
};int main() {string s = "aab";Solution s1;vector<vector<string>> result = s1.partition(s);for (vector<vector<string>>::iterator it = result.begin(); it != result.end(); it++) {for (vector<string>::iterator jt = (*it).begin(); jt != (*it).end(); jt++) {cout << *jt << " ";}cout << endl;}system("pause");return 0;
}

end

http://www.yayakq.cn/news/371161/

相关文章:

  • 观澜小学 网站建设南昌专业做网站公司有哪些
  • 东莞网站网站建设.net 网站生成安装文件目录
  • 淘宝联盟推广做网站违法搭建网站属于什么专业
  • 源码快速建站百度广告投放技巧
  • 建设工程信息网官网新网站网站设计 验收标准
  • 阿里云建设个人网站做刷题网站赚钱么
  • 网站硬件方案有没有教做韩餐的网站
  • 海南做网站的模具做外贸网站
  • 小程序制作网站在线设计平台官网
  • 类似freenom的免费域名网站做营销网站哪家好
  • 网站api怎么做的深圳企业管理咨询公司
  • 营销型网站举例找网站建设
  • 公司网站如何在百度上能搜索到杭州 网站定制
  • 做一个赚钱的网站好建设企业银行电脑版怎么下载
  • 制作旅游网站网页的代码aspcms 网站无法显示该页面
  • 盗网站asp源码免费crm网站下载
  • 个人做的网站可以收款响应式网站要怎么做
  • 深圳市门户网站建设建设网站一般多钱
  • 免费建站平台排行榜xampp如何搭建wordpress
  • cms适合做什么网站网站页面优化怎么做
  • 做网站和做软件哪个难下沙建设局网站
  • 网站建设+深圳+凡科湖南建设工程信息网站
  • 网站备案加速手机网站模板制作教程
  • 外贸网站建设电话桥梁建设期刊的投稿网站
  • 网站做多少屏合适国家建设局网站首页
  • 个人网站空间做高端生活方式的网站
  • asp 网站源码 下载苏州建设网站专业
  • 非交互式网站备案免费论坛申请网站
  • 收益网站制作凡科网域名续费
  • 百石网怎么做网站最新的新闻