leetcode验证回文字符串

news2025/1/12 20:54:35

链接: 验证回文字符串
在这里插入图片描述

class Solution {
public:

    bool isLetterOrNumber(char ch)
    {
        return (ch>='a' && ch<='z')
                || (ch>= '0' && ch <= '9');
    }

    bool isPalindrome(string s) {
        //大写字母转换成小写
        for(auto& ch : s)
        {
            if(ch>= 'A' && ch <= 'Z')
            {
                ch+=32;
            }
        }

        int begin = 0;
        int end = s.size()-1;
        while(begin < end)
        {
            while(begin < end && !isLetterOrNumber(s[begin]))
            {
                ++begin;
            }

            while(begin < end && !isLetterOrNumber(s[end]))
            {
                --end;
            }
            if(s[begin] == s[end])
            {
                ++begin;
                --end;
            }
            else
            {
                return false;
            }
        }

        return true;
    }

};

利用快速排序的思想,一前一后的思路进行查找对比,首先进入代码程序后将大写字母全部转换为小写,后通过一前一后的思路进行查找对比,如果begin和end对应的是字母或者数字则进行比较,如果相等继续比较,如果不相等直接返回false。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/703777.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

POI导出Excle工具类(反射读取Java类)

文章目录 简介操作Excel相关组件使用工具类 简介 POI是Apache软件基金会用Java编写的免费开源的跨平台的 Java API&#xff0c;Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 所以POI的主要功能是可以用Java操作Microsoft Office的相关文件&#xff0…

【uniapp开发小程序】点击获取手机号(使用@getphonenumber)

一、实现效果 二、代码实现&#xff1a; <template><view><view class"shopadd" v-if"info.mobile">{{info.mobile}}</view><button class"getNumber" v-else open-type"getPhoneNumber" getphonenumber…

linux php 内置服务器测试 phpinfo

环境&#xff1a;linux 操作系统&#xff0c;有图形化界面&#xff0c;有浏览器 php -S localhost:8000直接使用 -S 命令选项&#xff0c;然后指定地址及端口号&#xff0c;我们就可以运行起来一个 PHP 内置的简易WEB服务器。默认情况下&#xff0c;这个地址会找当前目录下的 …

干货|三个维度详解 Taier 本地调试原理和实践

在平时和开发者们交流的过程中&#xff0c;发现许多开发朋友尤其是新入门 Taier 的开发者&#xff0c;对于本地调试都有着诸多的不理解和问题。本文就大家平时问的最多的三个问题&#xff0c;服务编译&#xff0c;配置&本地运行&#xff0c;如何在 Taier 运行 Flink-standa…

46 # 可读流 readStream

上一节实现了文件拷贝功能&#xff0c;其中的读和写的操作都耦合在一起了&#xff0c;能不能实现一个方法&#xff0c;可以用一行搞定&#xff0c;这里涉及到流里的 pipe 流 流是有方向的&#xff0c;先读出来再写&#xff0c;node 中实现了流的模块&#xff08;stream&#…

记一次使用MySQL数据库ORM为 SqlSugar 事务无效的处理过程

在项目中使用了开源代码框架admin.net &#xff0c;其使用的数据库ORM为SqlSugar 使用以下代码执行事务理论上应该有回滚发生&#xff0c;但数据任然删除了 [UnitOfWork][ApiDescriptionSettings(Name "Delete")] [HttpPost][DisplayName("删除菜单")]p…

linux上搭建nfs服务

NFS&#xff08;Network File System&#xff09;&#xff1a;它最大的功能就是可以通过网络&#xff0c;让不同的机器、不同的操作系统可以共享彼此的文件。 NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中&#xff0c;而在本地端的系统中来看&…

测试背了4年“锅“,测试缺陷总结整理(细致)“锅“终丢掉了...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 缺陷分析也是测试…

青岛大学_王卓老师【数据结构与算法】Week03_04_线性表的链式表示和实现4_学习笔记

本文是个人笔记&#xff0c;仅用于学习分享&#xff0c;素材来自青岛大学王卓老师的教学视频&#xff0c;如有侵权&#xff0c;请留言作删文处理。 视频链接&#xff1a; 数据结构与算法基础–第3周04–2.5线性表的链式表示和实现4–单链表基本操作2–销毁单链表 &#x1f4…

Echarts X轴文本显示不全 axisLabel设置旋转角度进行展示

option {xAxis: {......axisLabel: {rotate: 45},......},...... };效果&#xff1a;

伦敦金实时行情走势图的魅力

一直以来&#xff0c;伦敦金都因其自由的交易时间和不设涨跌幅限制而充满魅力&#xff0c;它每天的实时行情走势图是全球投资者关注的焦点&#xff0c;任何投资者都可以结合技术和基本面分析手段&#xff0c;来预测未来金价走势&#xff0c;从而在这个市场上实现收益。 虽然在一…

玩游戏感觉很不流畅,无法进入游戏的解决方法

别说3A大作了&#xff0c;有时候觉得玩个小单机游戏感觉很不流畅&#xff0c;甚至进不去游戏&#xff0c;出现这种情况大家就得多关注下自己电脑故障问题了&#xff0c;驱动人生帮大家解决玩游戏不流畅&#xff0c;无法进入游戏的故障问题。 出现玩游戏感觉很不流畅&#xff0…

【C++】C++入门(二)

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员&#xff0c;2024届电子信息研究生 目录 1.缺省参数(默认参数) 2.函数重载 a.函数重载的概念 问题&#xff1a; 为什么C语言无法重载&#xff0c;而C plus plus 可以重载&#xff1f; C plus plus是如何做到函数重载的&a…

【几何数学】【Python】【C++】将线段沿着线段方向延长一定长度,求新的点

p1点和p2点是一条线段的两端&#xff0c;沿着p1指向p2的方向&#xff0c;将线段长度延伸长度x&#xff0c;求延伸后的点ep。如下图&#xff1a; Python代码&#xff1a; import mathdef extend_line_segment(p1, p2, extension_length):"""延伸线段长度并返回…

微信小程序全局数据共享

1.概念 全局数据共享(又叫做&#xff1a;状态管理)是为了解决组件之间数据共享的问题。 2.小程序中共享方案 在小程序中&#xff0c;可使用mobx-miniprogram配合mobx-miniprogram-bindings实现全局数据共享mobx-miniprogram用来创建Store实例对象 mobx-miniprogram-bindings…

改进YOLOv8 | 主干网络篇 | YOLOv8 更换主干网络之 ConvNext | 《纯卷积结构超越 ViTs》

论文地址:https://arxiv.org/pdf/2201.03545.pdf 代码地址:https://github.com/facebookresearch/ConvNeXt 视觉识别的“Roaring 20年代”始于视觉变换器(ViTs)的引入,它很快取代了ConvNets,成为最先进的图像分类模型。另一方面,普通ViTs在应用于一般的计算机视觉任务(…

日撸java三百行day71-73

文章目录 说明BP神经网络1.基础知识3 代码理解3.1 数据的初始化3.2 训练过程 train方法3.3 forward 前向传播函数3.4 backPropagation反向传播函数 说明 闵老师的文章链接&#xff1a; 日撸 Java 三百行&#xff08;总述&#xff09;_minfanphd的博客-CSDN博客 自己也把手敲的…

【Vue2】Vant2上传文件使用formData方式,base64图片转Blob再转File上传

文章目录 前言一、base64转换为 Blob 对象的方法二、使用步骤1.引入工具类js2.编写formData上传方法3.api方法中的request代码 三、实际操作1.html代码2.js代码 总结 前言 vant2上传组件传送门 使用vant2组件中的uploader组件 <van-uploader v-model"fileList" …

打破常规之路,创新永不停歇!ADSCOPE成功斩获2023第十一届TopDigital“年度最佳营销技术公司”奖项!

2023年6月29日&#xff0c;第十一届TopDigital创新营销奖获奖结果正式揭晓&#xff0c;ADSCOPE凭借先进的广告变现技术&#xff0c;创新的变现理念&#xff0c;从海内外657家参赛企业提交的3052件作品中突出重围&#xff0c;成功斩获“TopDigital创新营销奖—年度最佳营销技术公…

el-table多级表头处理方法,了解lebel和prop的真实含义,template的意义,减少全局定义变量。

Element - The worlds most popular Vue UI framework 官网地址 其原理只需要在 el-table-column 里面嵌套 el-table-column&#xff0c;就可以实现多级表头。 要实现的效果如下图所示&#xff1a; <div class"c-table" id"tablePrint"><el-tabl…