原文链接:680. 验证回文串 II - 力扣(LeetCode)
给你一个字符串 s,最多 可以从中删除一个字符。
请你判断 s 是否能成为回文字符串:如果能,返回 true ;否则,返回 false 。
示例 1:
输入:s = "aba"
输出:true
示例 2:
输入:s = "abca"
输出:true
解释:你可以删除字符 'c' 。
示例 3:
输入:s = "abc"
输出:false
提示:
1 <= s.length <= 105
s 由小写英文字母组成
解题思路
利用双指针,前后同时比较是否相同
遇到不相同的,向后或向前跳一个字符继续判断
- class Solution {
- public boolean validPalindrome(String s) {
- int left=0,right=s.length()-1;
- while(left
- if(s.charAt(left)!=s.charAt(right)){
- return isTrue(s,left+1,right)||isTrue(s,left,right-1);
- }
- left++;
- right--;
- }
- return true;
- }
- public boolean isTrue(String str,int left,int right){
- while(left
- if(str.charAt(left)!=str.charAt(right)){
- return false;
- }
- left++;
- right--;
- }
- return true;
- }
- }
时间:6ms 空间:42.3MB
-
相关阅读:
Hierarchy-Aware Global Model for Hierarchical Text Classification
UWA报告使用技巧小视频,你get了么?(第六弹)
枚举,进制转换,char*,补码,算法,链表,位运算,NULL的含义
PHP 安全漏洞:会话劫持、跨站点脚本、SQL 注入以及如何修复它们
上海市青少年算法2023年9月月赛(丙组)
弘玑Cyclone2022产品发布会:超级自动化下的流程挖掘——弘观流程智能
RTU远程终端控制系统S274
关于数据库的一些基本概念
字节序详细解读
用VirtualBox打开VMware创建的虚拟机的方法
-
原文地址:https://blog.csdn.net/qq_52726736/article/details/128051517