LeetCode131:分割回文串

题目描述
给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是
回文串。
返回 s 所有可能的分割方案。在这里插入图片描述

代码

class Solution {
public:
    vector<vector<string>> res;
    vector<string> path;

    bool isPalindrome(const string &s, int start, int end) {
        while (start < end) {
            if (s[start] != s[end]) {
                return false;
            }
            ++start;
            --end;
        }
        return true;
    }
    
    void backTracking(const string &s, int startIndex) {
        //startIndex作为切割线
        if (startIndex >= s.size()) {
            res.push_back(path);
            return;
        }

        for (int i = startIndex; i < s.size(); i++) {
            //是回文串
            if (isPalindrome(s, startIndex, i)) {
                /*
                    截取字符串的一段
                    方法1
                    string tmp(s.begin() + startIndex, s.begin() + i+1);
                    方法2
                    s.substr (pos, n) ,pos表示要截取的字符串的开始的位置,n 代表要截取的字符串的长度。
                    s.substr(pos) , 表示从pos位置开始的 到字符串最后一位截取的字符串

                    s.substr(startIndex,i-startindex+1);
                */
                string tmp = s.substr(startIndex, i - startIndex + 1);
                path.push_back(tmp);
            }
            else
                continue;

            backTracking(s, i + 1);
            path.pop_back();
        }
    }

    vector<vector<string>> partition(string s) {
        if (s.size() == 0) return res;
        backTracking(s, 0);
        return res;
    }
};

相关推荐

  1. leetcode 131. 分割

    2024-04-23 11:28:01       56 阅读
  2. leetcode热题HOT leetcode131. 分割

    2024-04-23 11:28:01       45 阅读
  3. 131. 分割

    2024-04-23 11:28:01       54 阅读
  4. 131. 分割

    2024-04-23 11:28:01       60 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-23 11:28:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-23 11:28:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-23 11:28:01       82 阅读
  4. Python语言-面向对象

    2024-04-23 11:28:01       91 阅读

热门阅读

  1. StarRocks用户权限管理

    2024-04-23 11:28:01       39 阅读
  2. R语言 |一些常用的数据整理的技巧(二)

    2024-04-23 11:28:01       30 阅读
  3. 算法矩阵提速原理

    2024-04-23 11:28:01       34 阅读
  4. iOS知识点 ---UIView和CAlayer

    2024-04-23 11:28:01       36 阅读
  5. 数学建模:Matlab一元二次回归模型-重庆房价预测

    2024-04-23 11:28:01       31 阅读
  6. vue的优化手段

    2024-04-23 11:28:01       32 阅读
  7. 分布式与微服务区别?

    2024-04-23 11:28:01       33 阅读
  8. docker配置github仓库ghcr国内镜像加速

    2024-04-23 11:28:01       38 阅读
  9. Python3:数据校验机制

    2024-04-23 11:28:01       37 阅读
  10. Leetcode 20:有效的括号

    2024-04-23 11:28:01       38 阅读
  11. MySQL数据库创建用户并授权查询某个表

    2024-04-23 11:28:01       39 阅读