每日一题 <验证回文串>

简介: 每日打卡

image.png

这题在以前就用C语言写过了,最近又拿出来用C++再写一遍。

class Solution {
public:
bool isPalindrome(string s) {
    int n = s.size();    //字符串的大小
    int left = 0;        //确定双指针左右边界
    int right = n - 1; 
    while (left < right)
    {
        while (left < right && !isalnum(s[left])) //确保不越界且跳过对符号的选择
        {
            left++;
        }
        while (left < right && !isalnum(s[right]))
        {
            right--;
        }
        if(left < right)
        {
            if (tolower(s[left]) != tolower(s[right]))  //大小写不同也可以认为相等,不妨都转换成小写
        {
            return false;
        }
        }
        left++;
        right--;
    }
    return true;
}
};

image.gif

目录
相关文章
|
7月前
|
数据安全/隐私保护
【洛谷 P1928】外星密码 题解(递归+字符串)
外星密码挑战涉及解压缩由重复子串压缩的字符串,如`[3FUN]`代表`FUNFUNFUN`。输入是一行压缩过的字符串,输出是解压缩的结果。代码使用递归方法,遇到`[`读取重复次数并解压下一层,遇到`]`返回当前层结果,否则直接添加字符。样例输入`AC[3FUN]`输出`ACFUNFUNFUN`。处理的数据限制为解压后长度在20000内,最多十重压缩。
105 0
|
7月前
|
算法
力扣每日一题 6/23 字符串/模拟
力扣每日一题 6/23 字符串/模拟
55 1
|
7月前
力扣经典150题第二十五题:验证回文串
力扣经典150题第二十五题:验证回文串
44 0
|
7月前
力扣每日一题 6/18 字符串/模拟
力扣每日一题 6/18 字符串/模拟
38 0
|
7月前
|
canal 算法 数据可视化
LeetCode 125题:验证回文串
LeetCode 125题:验证回文串
|
8月前
leetcode-125:验证回文串
leetcode-125:验证回文串
59 0
|
8月前
|
算法
算法编程(六):验证回文串
算法编程(六):验证回文串
59 0
|
人工智能
Leecode 680 验证回文串 II 双指针法
第一次报错是因为没有判断删除一个字符后的情况 第二次报错是因为没有添加是删除一个字符而不是删除多个字符能不能构成回文串的条件 第三次报错是因为没有考虑先删除左边还是右边的问题,有些奇葩它先删除左边不可以通过,得先删除右边
|
canal
LeetCode 125. 验证回文串
LeetCode 125. 验证回文串
94 0
|
索引
力扣刷题记录——367. 有效的完全平方数、383. 赎金信、387. 字符串中的第一个唯一字符、389. 找不同
力扣刷题记录——367. 有效的完全平方数、383. 赎金信、387. 字符串中的第一个唯一字符、389. 找不同
126 0
力扣刷题记录——367. 有效的完全平方数、383. 赎金信、387. 字符串中的第一个唯一字符、389. 找不同

热门文章

最新文章

下一篇
开通oss服务