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

北京网站排名优化公司构建html5博客网站

北京网站排名优化公司,构建html5博客网站,长沙做网站咨询公司,成都品牌形象设计公司【LetMeFly】680.验证回文串 II:两侧向中间,不同就试删 力扣题目链接:https://leetcode.cn/problems/valid-palindrome-ii/ 给你一个字符串 s,最多 可以从中删除一个字符。 请你判断 s 是否能成为回文字符串:如果能…

【LetMeFly】680.验证回文串 II:两侧向中间,不同就试删

力扣题目链接:https://leetcode.cn/problems/valid-palindrome-ii/

给你一个字符串 s最多 可以从中删除一个字符。

请你判断 s 是否能成为回文字符串:如果能,返回 true ;否则,返回 false

 

示例 1:

输入:s = "aba"
输出:true

示例 2:

输入:s = "abca"
输出:true
解释:你可以删除字符 'c' 。

示例 3:

输入:s = "abc"
输出:false

 

提示:

  • 1 <= s.length <= 105
  • s 由小写英文字母组成

解题方法:遍历

从两边到中间遍历字符串,如果当前两个字符不相同,就尝试删除其中的一个(并判断删除后中间剩下的字符串是否是回文字符串)。

如果删除一个或零个能成为回文字符串,则返回true

  • 时间复杂度 O ( l e n ( s ) ) O(len(s)) O(len(s))
  • 空间复杂度 O ( 1 ) O(1) O(1)

AC代码

C++
/** @Author: LetMeFly* @Date: 2025-02-03 08:52:33* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-02-03 08:57:47*/
class Solution {
private:bool isOk(string& s, int l, int r) {for (; l < r; l++, r--) {if (s[l] != s[r]) {return false;}}return true;}
public:bool validPalindrome(string& s) {for (int i = 0, j = s.size() - 1; i < j; i++, j--) {if (s[i] != s[j]) {return isOk(s, i, j - 1) || isOk(s, i + 1, j);}}return true;}
};
Python
'''
Author: LetMeFly
Date: 2025-02-03 08:57:31
LastEditors: LetMeFly.xyz
LastEditTime: 2025-02-03 08:59:26
'''
class Solution:def isOk(self, s: str, l: int, r: int) -> bool:while l < r:if s[l] != s[r]:return Falsel += 1r -= 1return Truedef validPalindrome(self, s: str) -> bool:l, r = 0, len(s) - 1while l < r:if s[l] != s[r]:return self.isOk(s, l, r - 1) or self.isOk(s, l + 1, r)l += 1r -= 1return True
Java
/** @Author: LetMeFly* @Date: 2025-02-03 08:57:34* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-02-03 09:01:29*/
class Solution {private boolean isOk(String s, int l, int r) {for (; l < r; l++, r--) {if (s.charAt(l) != s.charAt(r)) {return false;}}return true;}public boolean validPalindrome(String s) {for (int l = 0, r = s.length() - 1; l < r; l++, r--) {if (s.charAt(l) != s.charAt(r)) {return isOk(s, l, r - 1) || isOk(s, l + 1, r);}}return true;}
}
Go
/** @Author: LetMeFly* @Date: 2025-02-03 08:57:46* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-02-03 09:05:54*/
package mainfunc isOk_VP(s string, l, r int) bool {for ; l < r; l, r = l + 1, r - 1 {if s[l] != s[r] {return false}}return true
}func validPalindrome(s string) bool {for l, r := 0, len(s) - 1; l < r; l, r = l + 1, r - 1 {if s[l] != s[r] {return isOk_VP(s, l, r - 1) || isOk_VP(s, l + 1, r)}}return true
}

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

Tisfy:https://letmefly.blog.csdn.net/article/details/145427404

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

相关文章:

  • 单页网站如何做排名电商运营培训课程视频
  • 合川集团网站建设wordpress 最快的版本
  • 网易云wordpress代码seo权重查询
  • 江门公司网站制作金华住房和城乡建设厅网站
  • 淘宝联盟推广网站怎么建设中国建筑网官网人员名单
  • 怎样建设一个网站教学搜索引擎推广成功的案例
  • 深圳市住房和建设局住房保障服务主页江北关键词优化排名seo
  • html5网站带后台如何在百度上做产品推广
  • 上海餐饮网站建设做会计公司网站的目录
  • 企业网站优化方式制作小程序需要什么技术
  • 做网页的网站叫什么软件新乡网站建设哪家好
  • 可以做网站头像的图片网页的定义
  • 安徽省做网站wordpress两侧有空白
  • 网站建设xm37古诗网页制作教程
  • 网络域名申请条件需要优化的地方
  • 2015年做那些网站能致富基本公共服务标准化
  • 营销型网站的设计与建设餐厅网站建设策划方案
  • 北京整站线上推广优化一站式服务大厅
  • 建设厅焊工证查询网站什么是网站关键字优化
  • 做周边的专业网站免费做网站教程
  • 网站建设的题目yfcms企业网站建设
  • 做虚拟网站要花多少钱网站建设一般需要什么功能
  • ie兼容性 网站东海做网站公司
  • 上海免费网站建设模板推荐360浏览器屏蔽某网站怎么做
  • 论坛网站如何建设安卓优化大师官网
  • 移动公司营销网站设计设计本官方网站广告
  • 手机网站 普通网站召开网站建设培训会
  • 做网站公司经营范围淘宝网站的建设内容
  • 手机访问不了自己做的网站网站模板分类
  • 安安互联怎么上传网站怎么建立和设计公司网站