leetcode 125.验证回文串

这篇具有很好参考价值的文章主要介绍了leetcode 125.验证回文串。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

⭐️ 题目描述

leetcode 125.验证回文串,刷题,leetcode,c++,刷题


🌟 leetcode链接:https://leetcode.cn/problems/valid-palindrome/

思路: 这道题只判断字符串中的字母与数字是否是回文。虽然小写大写字母可以互相转换,但是里面是含有数字字符的,所以先统一,把字符串中所有的字母都转换成大写或者小写,然后一个下标从左开始寻找一个下标从右开始寻找匹配的字符,直到都满足在判断是否相等若一直是相等则是回文,否则不是回文。

代码:文章来源地址https://www.toymoban.com/news/detail-662299.html

class Solution {
public:
    bool isPalindrome(string s) {
        // 全部统一为小写
        for (auto& val : s) {
            if (isupper(val)) {
                val += 32;
            }
        }

        int left = 0;
        int right = s.size() - 1;
        while (left < right) {
            while (left < right && !isalnum(s[left])) {
                left++;
            }

            while (left < right && !isalnum(s[right])) {
                right--;
            }

            // 判断是否相等
            if (s[left] == s[right]) {
                left++;
                right--;
                continue;
            }

            return false;
        }

        return true;
    }
};

到了这里,关于leetcode 125.验证回文串的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 125.验证回文串

    目录 一、题目 二、代码 125. 验证回文串 - 力扣(LeetCode)

    2024年02月14日
    浏览(23)
  • c++:string相关的oj题(415. 字符串相加、125. 验证回文串、541. 反转字符串 II、557. 反转字符串中的单词 III)

    传送门 首先,定义两个指针 index1 和 index2 分别指向两个输入字符串的最后一位,用来从后往前遍历字符串。 然后定义一个变量 next 用来表示进位,初始化为 0。 接下来使用一个循环来遍历两个字符串,直到 index1 和 index2 都小于 0。在循环中,每次取出 index1 和 index2 对应位置

    2024年01月23日
    浏览(43)
  • LeetCode刷题 | 647. 回文子串、516. 最长回文子序列

    给你一个字符串  s  ,请你统计并返回这个字符串中  回文子串  的数目。 回文字符串  是正着读和倒过来读一样的字符串。 子字符串  是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。

    2024年02月12日
    浏览(34)
  • 【LeetCode刷题】最长回文子串

    📝个人主页:爱吃炫迈 💌系列专栏:数据结构与算法 🧑‍💻座右铭:道阻且长,行则将至💗 题目:最长回文子串 思路一:暴力 枚举每一个子串,找回文串,然后通过比较,找出最长的回文串。 会超时 学习更多的JavaScript字符串方法,例如上面代码中用到的 split() , joi

    2023年04月23日
    浏览(34)
  • leetcode刷题之回文链表

    目录 做题思路 代码实现 1.找到链表的中间节点 2.反转中间节点之后的链表 3.判断倒置的后半部分的链表是否等于前半部分的链表 整体代码展示 总结: 这里是题目链接。234. 回文链表 - 力扣(Leetcode)  这道题目的意思是:判断该链表中后半部分倒置是否跟前半部分相同,如

    2023年04月10日
    浏览(67)
  • 【刷题1】LeetCode 131. 分割回文串 java题解

    2024: 刚开始做leetcode hot100,查阅自己以前写的题解专栏,发现没有这一题,于是加上。可能leetcode100更新了吧。我看现在leetcode100官网的题目已经是分好类的了,以前我的题解帖子是自己手动分类整理的。

    2024年02月19日
    浏览(30)
  • 【leetcode 力扣刷题】回文串相关题目(KMP、动态规划)

    题目链接:5. 最长回文子串 题目内容: 题目就是要我们找s中的回文子串,还要是最长的。其实想想,暴力求解也行……就是遍历所有的子串,同时判断是不是回文串,是的话再和记录的最大长度maxlen比较,如果更长就更新。时间复杂度直接变成O(n^3)。 优化的点在于,假设子

    2024年02月09日
    浏览(34)
  • ⭐北邮复试刷题LCR 018. 验证回文串__双指针 (力扣119经典题变种挑战)

    给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s = “A man, a plan, a canal: Panama” 输出: true 解释:“amanaplanacanalpanama” 是回文串 示例 2: 输入: s = “race a car” 输出: false

    2024年02月22日
    浏览(28)
  • Leetcode刷题之回文链表和交换链表中的结点

    竭力履行你的义务,你应该就会知道,你到底有多大的价值。      --列夫.托尔斯泰 目录 🪴一.回文链表 🌻1.快慢指针  🍁2.把值存入数组中,然后使用双指针  🌼二.交换链表中的结点  🍂1.快慢指针 给你一个单链表的头节点  head  ,请你判断该链表是否为回文链表。如

    2024年02月04日
    浏览(40)
  • LeetCode刷题--- 验证二叉搜索树

    个人主页:元清加油_【C++】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏:力扣递归算法题                    【C++】   前言:这个专栏主要讲述递归递归、搜索与回溯算法,所以下面题目主要也是这些算法做的   我讲述题目会把讲解部分分为3个部分: 1、题目解析

    2024年02月04日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包