leetcode 热题100(131. 分割回文串)c++
链接:131. 分割回文串 - 力扣(LeetCode)
给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是
回文串
。返回 s 所有可能的分割方案。
示例 1:
输入:s = "aab" 输出:[["a","a","b"],["aa","b"]]
示例 2:
输入:s = "a" 输出:[["a"]]
提示:
1 <= s.length <= 16s仅由小写英文字母组成
思路
首先一看到数据范围这么小,很明显就是要我们dfs搜索的,然后这题还是求最大回文串的,那么我们知道肯定得先判断一下当前数组是否是回文串,不是的话就不添加,否则就添加进去。
判断回文串我们知道可以用记忆化搜索,如果我们之前搜过了当前子串,我们可以给他赋值1和-1,
1表示当前子串是回文串,-1表示不是,这样子我们就可以很快的判断是否是回文串了,就直接套回溯dfs模板直接写即可
代码
class Solution {
public:vector<vector<string>> res;vector<string> ans;int n;int f[18][18];void dfs(int p,string s){cout<<p<<endl;if(p>=s.size()){ //已经到达右端点无需遍历了,直接添加res.push_back(ans);return;}for(int i=1;i<=n;i++){//表示枚举的长度if(p+i<=n && isflag(p,p+i-1,s)==1){ //当前子串是回文串, ans.push_back(s.substr(p,i));dfs(p+i,s);ans.pop_back();}}}int isflag(int i,int j,string s){if(f[i][j]) return f[i][j];if(i>=j) return f[i][j]=1;return f[i][j]=(s[i]==s[j])?isflag(i+1,j-1,s):-1;}vector<vector<string>> partition(string s) {n = s.size();dfs(0,s);return res;}};
相关文章:
leetcode 热题100(131. 分割回文串)c++
链接:131. 分割回文串 - 力扣(LeetCode) 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 示例 1: 输入:s "aab" 输出ÿ…...
vs2022编译opencv 4.10.0
参考:Windosw下Visual Studio2022编译OpenCV与参考区别在于,没有用cmake GUI,也没有创建build目录,直接用vs2022打开了C:\code\opencv目录,即CMakeLists.txt所在根目录。没有修改默认下载地址,采用手动下载…...
Bash 中的 2>1 | tee 命令详解
Bash 中的 2>&1 | tee 命令详解 在 Linux 和 Unix 系统中,命令行提供了强大的输出控制功能,能够灵活地处理标准输入(stdin)、标准输出(stdout)和标准错误(stderr)。本文将详…...
MySQL数据库的日志
一、概论 日志(log)是一种记录系统运行时各种状态和事件的文件。 它通常用于系统监控、故障排查、安全审计和性能分析。日志文件可以记录用户操作、系统错误、应用程序行为等信息。日志文件通常包含时间戳、事件类型、事件描述等关键信息,以…...
DataCap 2024.4.1 版本发布:MongoDB 驱动支持、工作流引擎升级
尊敬的 DataCap 用户: DataCap 2024.4.1 版本现已正式发布。本次更新包含多项重要功能升级和性能优化,现将主要更新内容公布如下: 核心功能升级 数据库功能增强 (实现功能) 新增数据库管理功能:支持创建、删除和切换数据库完善表…...
二十三种设计模式-单例模式
单例模式(Singleton):确保一个类只有一个实例,并提供一个全局访问点。 单例模式两种实现方法:懒汉式和饿汉式。 懒汉式(Lazy Initialization) 懒汉式单例模式在第一次被使用时才创建实例&…...
【微服务】SpringBoot 国际化适配方案使用详解
目录 一、前言 二、国际化概述 2.1 微服务中的国际化是什么 2.1.1 国际化概念 2.1.2 为什么需要国际化 2.2 微服务中常用的国际化方法 2.2.1 资源文件分离 2.2.2 使用国际化框架 2.2.3 使用动态模板 2.2.4 使用数据库存储 2.2.5 API设计结合配置中心 三、SpringBoot…...
太阳能电池板缺陷识别数据集,使用yolo,coco json,pasical voc xml格式标注,可识别旁路二极管,电池故障,热点,2234张原始图片
太阳能电池板缺陷识别数据集,使用yolo,coco json,pasical voc xml格式标注,可识别旁路二极管,电池故障,热点,2234张原始图片 以下是该项目的一些用例: 太阳能发电厂监控:该模型可用于自动化检查和识别大型…...
客户案例:基于慧集通平台集成打通小满CRM+金蝶云星空+钉钉
一、引言 本案例原型公司是一家生物科技公司,公司自开创以来专注于体外诊断生物活性原材料的研究、生产、销售和服务,致力于为全球体外诊断试剂生产企业提供领先且具有竞争力的核心原料和相关辅助产品服务。公司以卓越的产品和优质的服务赢得了客户的广…...
ubuntu 如何使用vrf
在Ubuntu或其他Linux系统中,您使用ip命令和sysctl命令配置的网络和内核参数通常是临时的,这意味着在系统重启后这些配置会丢失。为了将这些配置持久化,您需要采取一些额外的步骤。 对于ip命令配置的网络接口和路由,您可以将这些配…...
Debian-linux运维-ssh配置(兼容Jenkins插件的ssh连接公钥类型)
系统版本:Debian 12.5、11.1 1 生成密钥对 可以用云服务商控制台生成的密钥对,也可以自己在客户端或者服务器上生成, 已经有密钥对就可以跳过这步 用户默认密钥文件路径为 ~/.ssh/id_rsa,可以在交互中指定路径,也可…...
K8S详解(5万字详细教程)
目录 编辑 一、集群管理命令 二、命名空间 1. 获取命名空间列表 2. 创建命名空间 3. 删除命名空间 4. 查看命名空间详情 三、Pod 1. Pod概述 2. Pod相位状态 3. 管理命令 3.1 获取命名空间下容器(pod)列表 3.2 查看pod的详细信息 3.3 创建 && 运行 3.4 …...
Redis6为什么引入了多线程?
大家好,我是锋哥。今天分享关于【Redis6为什么引入了多线程?】面试题。希望对大家有帮助; Redis6为什么引入了多线程? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Redis 6 引入了多线程的主要目的是提高性能&#…...
KMP 2024 年总结,Kotlin 崛起的一年
2024 Google I/O 上正式官宣了 KMP(Kotlin Multiplatform)项目,它是 Google Workspace 团队的一项长期「投资」项目,由 JetBrains 开发维护和开源的项目,简单来说,JetBrains 主导,Google Worksp…...
leecode188.买卖股票的最佳时机IV
这道题目我在买卖股票III就已经得出规律了,具体可看买卖股票的最佳时机||| class Solution { public:int maxProfit(int k, vector<int>& prices) {int nprices.size();vector<vector<int>> dp(n,vector<int>(2*k1,0));for(int j1;j&l…...
分布式消息队列RocketMQ
一、RocketMQ概述 1.1 MQ 概述 MQ,Message Queue,是一种提供消息队列服务的中间件,也成为消息中间件,是一套提供了消息生产、存储、消费全过程API的软件系统。消息即数据 1.2 MQ 用途 MQ的用途总结起来可分为以下三点 限流削峰…...
诗韵--代码之外的生活:2025 元旦歌
2025 元旦歌 1 说明2 正文3 简评 1 说明 又是一年元旦,在公司抽个空,写首诗纪念一下。 本系列博客:诗韵–代码之外的生活 2 正文 2025 元旦歌 一年又一年, 又到新元旦。 恍若零五年, 已是二五年。 工作忙连连&#x…...
SpringBoot项目启动的时候,指定jvm内存大小的3种方式
1. 通过命令行固定参数 在命令行中运行 Spring Boot 应用程序时,可以使用 -Xms 和 -Xmx 选项指定初始和最大堆内存大小。例如: java -Xms512m -Xmx1024m -jar mySpringBootApp.jar 优点: 简单明了 缺点: 是写死的,…...
学习vue3的笔记
一、vue和react的对比 1、基础介绍 vue:https://cn.vuejs.org/ vue3是2020年创建的 react:https://react.dev/ react是一个2013年开源的JavaScript库,严格意义上来说不是一个框架 2、diff算法 两个框架采用的都是同级对比策略 两节点对…...
MySQL UNION
关于《MySQL UNION》的操作,我查找到了一些有用的信息。 MySQL的UNION操作符用于将两个或多个SELECT语句的结果组合到一个结果集中,并去除重复的行。每个SELECT语句的列数和对应位置的数据类型必须相同。其基本语法格式如下: SELECT column…...
零基础极速上手教程:用AI建站工具10分钟生成你的第一个网站
你是不是也想过拥有一个属于自己的网站,但总觉得那是程序员才干得了的事?或者你曾经试过一些建站工具,结果被复杂的后台、密密麻麻的选项和所谓的「可视化拖拽」搞得晕头转向?别担心,今天这篇教程,就是专门…...
10倍效率提升!词达人自动化助手:告别枯燥词汇练习的终极解决方案
10倍效率提升!词达人自动化助手:告别枯燥词汇练习的终极解决方案 【免费下载链接】cdr 微信词达人,高正确率,高效简洁。支持班级任务及自选任务 项目地址: https://gitcode.com/gh_mirrors/cd/cdr 你是否厌倦了每周在词达人…...
中兴光猫终极管理工具:一键开启工厂模式与永久Telnet完全指南
中兴光猫终极管理工具:一键开启工厂模式与永久Telnet完全指南 【免费下载链接】zteOnu A tool that can open ZTE onu device factory mode 项目地址: https://gitcode.com/gh_mirrors/zt/zteOnu zteOnu是一款专为中兴光猫设备设计的开源管理工具,…...
基于MCP协议与多模态大模型的图像结构化信息提取实战指南
1. 项目概述:从图像中“榨取”结构化信息的利器最近在折腾一些自动化流程,经常遇到一个头疼的问题:我需要从一堆截图、产品图或者设计稿里,把里面的文字、表格、甚至是图表数据给“抠”出来,变成机器能直接处理的文本或…...
如何快速清理Mac残留文件:免费开源工具终极指南
如何快速清理Mac残留文件:免费开源工具终极指南 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你是否曾经遇到过这样的困扰?明明已经…...
植物树枝叶片果实检测数据集7220张VOC+YOLO格式
植物树枝叶片果实检测数据集7220张VOCYOLO格式数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):7220 标注数量(xml文件个数):7220…...
思科CCNA认证备考:从题库到实战,这11个章节的易错点你踩过几个?
思科CCNA认证通关指南:11大核心章节的深度避坑策略 从题库到实战的认知跃迁 当您翻开CCNA的备考资料时,是否曾感到困惑——即使熟记题库答案,在实际操作和模拟考试中仍频频出错?这种现象在认证考生中极为普遍。问题的根源往往不在…...
ESJsonFormat-Xcode与MJExtension完美结合:构建高效iOS数据模型
ESJsonFormat-Xcode与MJExtension完美结合:构建高效iOS数据模型 【免费下载链接】ESJsonFormat-Xcode 将JSON格式化输出为模型的属性 项目地址: https://gitcode.com/gh_mirrors/es/ESJsonFormat-Xcode ESJsonFormat-Xcode是一款专为iOS开发者打造的JSON转模…...
别再手动写滤波器了!用Simulink DSP工具箱5分钟搞定一个可调带宽IIR滤波器
别再手动写滤波器了!用Simulink DSP工具箱5分钟搞定一个可调带宽IIR滤波器 信号处理工程师的日常工作中,滤波器设计是个绕不开的话题。无论是音频处理、通信系统还是生物医学信号分析,我们总需要根据不同的应用场景调整滤波器参数。传统方法中…...
Ti AWR2243实测:毫米波雷达通道积累,选相干还是非相干?一个实验讲清楚
Ti AWR2243毫米波雷达通道积累策略:工程实践中的深度抉择 毫米波雷达在现代自动驾驶系统中扮演着关键角色,而通道积累策略的选择直接影响着目标检测的精度与系统实时性。面对192个虚拟通道的海量数据,工程师们常常陷入两难:是追求…...
