题目:

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。

说明:本题中,我们将空字符串定义为有效的回文串。

示例 1:

输入: "A man, a plan, a canal: Panama"
输出: true

示例 2:

输入: "race a car"
输出: false

解题思路:拿到这个题之后首先就是想到将想要的字母和数字提取出来,组成一个新的字符串,方便自己的接下来的操作,所以用到StringBuffer方法。然后将其字母的大小写统一,用到str1 = str1.toLowerCase();方法。接着就是比较简单的判断了。判断首位对应位置的字符是否相等,不相等直接返回false,相等再接着判断,知道首位相遇,则返回true.

代码实现:

class Solution {public boolean isPalindrome(String s) {StringBuffer str = new StringBuffer();int high1 = s.length();for(int i = 0;i < high1;i++){char temp = s.charAt(i);if( ('a' <= temp  &&  temp <= 'z')|| ('A' <= temp  &&  temp <= 'Z')|| ('0' <= temp &&  temp  <= '9')){str.append(s.charAt(i));//获取有效地目标字符}}String str1 = str.toString();str1 = str1.toLowerCase();//将字符的大小写统一if(str1.length() != 0){int low = 0;int high = str1.length() - 1;while(low < high){if(str1.charAt(low) == (str1.charAt(high)) && low < high){low++;high--;}else{return false;}}if(low >= high){   return true;                  }}return true;}
}

判断字符串是否为回文字符串相关推荐

  1. c语言用递归法判断回文字符串,递归方式判断一个字符串是否为回文字符串

    /* * 递归方式判断一个字符串是否为回文字符串 */ public class PartitionTest{ public static void main(String[] args) { Str ...

  2. 用C语言去判断一个字符串是否为回文字符串(简单明了)

    C语言判断回文字符串呀 hello,小伙伴们.好久没写文章了,今天我们来写一下如何用C语言判断字符串是不是回文字符串呢. 大致思路:将字符串逆序赋给另一个字符串,然后比较这两个字符串是否相同.(其实也 ...

  3. Php判断一个字符串是否回文,PHP:判断一个字符串是否为回文字符串

    所谓回文字符串,兴许有很多人并不知晓是什么意思.其实呢,回文字符串就是从左往右看和从右往左看是一样的,就如同"CDDC"这样的例子.这么说,不知道大家明白没有.废话呢,也就不多说了 ...

  4. C语言判断字符串是否为回文字符串

    判断一字符串是否是回文字符串 回文的意思即为该字符串从左往右读出来的值与从右往左读出来的值一样. 代码 #include <stdio.h> #include <stdlib.h&g ...

  5. PHP实现判断字符串是否是回文字符串

    前两天,有朋友问我一个面试题,大概的意思就是: 如何判断一个字符串是回文字符串?(第一个和最后一个相同,第二个和倒数第二个相同,以此类推--) 这个感觉还是很简单的. <?php $str = ...

  6. 回文字符串:判断一个是否是回文字符串。回文字符串是指正序(从左向右)和倒序(从右向左)读都是一样的字符串。

    题目描述: 判断一个是否是回文字符串.回文字符串是指正序(从左向右)和倒序(从右向左)读都是一样的字符串. 示例1 输入:abc 输出:false 示例2 输入:-121 输出:false 示例3 输 ...

  7. 判断字符串是否为回文字符串_字符串文字

    判断字符串是否为回文字符串 String objects hold ordered sequences of bytes, typically characters, usually to form ...

  8. 使用单链表来判断字符串是否为回文字符串

    首先,回文字符串是指首位对称的字符串,如ABCDDCBA.ABCDCBA. 单链表,是一种线性表.由数据节点和指向下一个节点的地址组成.创建链表时,不需要连续的内存区域.其插入.删除节点时间复杂度O( ...

  9. leetCode第五题-求字符串最长回文字符串

    原题链接: 最长回文字符串 给你一个字符串 s,找到 s 中最长的回文子串. 示例 1: 输入:s = "babad" 输出:"bab" 解释:"ab ...

最新文章

  1. 分布式团队面临的五大问题及解决办法
  2. Scrum 学习笔记
  3. 丰富多彩的Android onTouch事件
  4. jersey rest webservice
  5. Leetcode#832. Flipping an Image(翻转图像)
  6. 基于Jenkins的开发测试全流程持续集成实践
  7. android10获取imei,Android 10 root用户获取imei
  8. 弗尤博客(十一)之搜索博文
  9. 电信业的100个随想
  10. 用VC写Assembly代码(2)
  11. mac网页转换pdf教程,在Mac系统中如何将html网页转成PDF文件?
  12. SAP License:SAP项目文档的考核标准
  13. 17、生命周期-BeanPostProcessor在Spring底层的使用
  14. thinkpadx1mdt 网络启动_二二、MDT 2013 Update 1批量部署-硬件驱动使用、驱动库建立及自动识别...
  15. 微信 华为盒子 搜索不到服务器,【沙发管家教你一招】用手机微信控制华为荣耀盒子!...
  16. 为什么浏览器全面禁用三方 Cookie
  17. CA服务器开开发(一)---颁发证书,生成pfx证书安装文件
  18. Python数据分析与可视化案例解析
  19. 成功解决 RecoveryYour PC/Device needs to be repairedThe Boot c onfiguration Data for your PC is missin
  20. 关于java实体类和mysql数据库json格式的对应问题,使用mybatis-plus

热门文章

  1. 大牛database
  2. Power Apps Component Framework(PCF)开发/更新组件及一些坑
  3. html-footer样式
  4. 一致性测试--总结_1
  5. 人人讲思政 门门谈育人文章计算机专业,课程门门有德育,教师人人讲育人
  6. android读写速度,安卓第一机皇堆“狠”料:UFS 3.0读取速度超1500Mb/s
  7. 芯片温升估算与实际测试
  8. Python连载系列:字符串和常见数据类型
  9. 计算机软件二次开发是否侵权,软件著作权的共有权人能否进行二次开发
  10. 黑龙江大学计算机考研资料汇总