Leetcode 680. 验证回文字符串 Ⅱ(可以,已解决)
给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。
示例 1:
输入: s = "aba" 输出: true
示例 2:
输入: s = "abca" 输出: true 解释: 你可以删除c字符。
示例 3:
输入: s = "abc" 输出: false
提示:
- 1 <= s.length <= 10^5
- s 由小写英文字母组成
Code:
class Solution { public: bool isHui(string &res) { for(int i=0;i<res.size()/2;i++) { if(res[i]!=res[res.size()-i-1]) return false; } return true; } bool validPalindrome(string s) { if(isHui(s)) return true; for(int i=0;i<s.length();i++) { if(s[i]!=s[s.length()-i-1]) { string temp=s; temp.erase(i,1); if(isHui(temp)) return true; string temp2=s; temp2.erase(s.length()-i-1,1); if(isHui(temp2)) return true; return false; } } return false; } };
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通