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

验证回文串2

1.题目:680. 验证回文串 II - 力扣(LeetCode)

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

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

2.解题思路

运用了贪心算法的思想,借助双指针实现。

1.如果第一个和最后一个元素相同,则内部的字符串是否为回文串决定了s是否为回文串;

2.如果第一个和最后一个元素不相同,则需要删除第一个或者最后一个才可能使得s成为回文串。

3.参考代码

class Solution {
public:bool ishuiwen(string str, int l, int r) {while (l < r) {if (str[l] != str[r]) {return false;}l++;r--;}return true;}bool validPalindrome(string s) {/*贪心算法的思想:1.如果第一个和最后一个元素相同,则内部的字符串是否为回文串决定了s是否为回文串;2.如果第一个和最后一个元素不相同,则需要删除第一个或者最后一个才可能使得s成为回文串。*/int L = 0;int R = s.size() - 1;while (L < R) {char c1 = s[L];char c2 = s[R];if (c1 == c2) {L++;R--;} else {return ishuiwen(s, L + 1, R) || ishuiwen(s, L, R-1);}}return true;}
};

相关文章:

  • 从ES5到ES6+:JavaScript语法演进与实现解析
  • 如何进行前端性能测试?--性能标准
  • rsync
  • Hadoop 的代理用户(Proxy User)​ 功能解释
  • VUE3基础样式调整学习经验
  • react-diff-viewer 如何实现语法高亮
  • 模块化PCB设计中联排半孔的应用
  • 【Bootstrap V4系列】学习入门教程之 组件-模态框(Modal)
  • Hugging Face推出了一款免费AI代理工具,它能像人类一样使用电脑
  • Elasticsearch 字段映射与数据类型
  • 物理:海市蜃楼是宇宙背景辐射吗?
  • [Java][Leetcode middle] 121. 买卖股票的最佳时机
  • 汽车紧固件涂层18问:看敦普无铬锌铝涂料如何为螺丝防锈防腐
  • 遭遇DDoS攻击为什么不能反击回去?
  • MATLAB复制Excel数据到指定区域
  • Egg.js知识框架
  • 塔能智能照明方案:点亮重庆某县节能落地
  • Ollama本地部署
  • 深度学习---常用优化器
  • 在嵌入式调试中IAR提示Fatal error: Failed connecting to probe Session aborted!怎么回事?怎么解决?
  • 为惩戒“工贼”,美国编剧工会“痛下杀手”
  • 被流量绑架人生,《人生开门红》能戳破网络时代的幻象吗
  • 普京提议恢复直接谈判,泽连斯基:望俄明日停火,乌愿谈判
  • 宣布停火后,印控克什米尔地区再次传出爆炸声
  • 图集︱“中国排面”威武亮相
  • 雷军:过去一个多月是创办小米以来最艰难的时间