Easy-题目60:125. Valid Palindrome
来源:互联网 发布:java 多线程 pdf 编辑:程序博客网 时间:2024/05/16 11:15
题目原文:
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.
题目大意:
给一个字符串,只考虑字母数字且忽略大小写的情况下,判断是不是回文的。
题目分析:
在普通判断回文的算法基础上简单加以改进即可,遇到大写字母转换为小写字母,遇到非字母和数字跳过,遇到两边指针指向的字符不相等直接返回false跳出去。
源码:(language:java)
public class Solution { public boolean isPalindrome(String s) { int len=s.length(); if(len==0||len==1) return true; int i=0,j=len-1; while(i<j) { char ch1=s.charAt(i); char ch2=s.charAt(j); if(ch1>='A'&&ch1<='Z') ch1+=32; if(ch2>='A'&&ch2<='Z') ch2+=32; if (!((ch1>='a'&&ch1<='z') || (ch1>='0' && ch1<='9'))) { i++; continue; } if (!((ch2>='a'&&ch2<='z') || (ch2>='0' && ch2<='9'))) { j--; continue; } if(ch1!=ch2) return false; else { i++; j--; } } return true; }}
成绩:
5ms,beats 97.26%,众数9ms,15.18%
cmershen的碎碎念
其实本题的思路不难想,但我也想不到为什么会击败这么多提交代码……,可能是计算机中加32比较好操作吧(只需改动1bit)
0 0
- Easy-题目60:125. Valid Palindrome
- 【Easy】125. Valid Palindrome
- 125. Valid Palindrome [easy] (Python)
- Leetcode 125. Valid Palindrome (Easy) (cpp)
- Leetcode[Easy] - Valid Palindrome
- Valid Palindrome(easy)
- [Leetcode 125, easy] Valid Palindrome
- <LeetCode><Easy> 125 Valid Palindrome
- Easy 125题 Valid Palindrome
- Leet Code OJ 125. Valid Palindrome [Difficulty: Easy]
- Leetcode OJ 125 Valid Palindrome [Easy]
- Easy-题目35:9. Palindrome Number
- Easy-题目54:234. Palindrome Linked List
- LeetCode-Easy部分中标签为Two Pointers 125. Valid Palindrome
- [LeetCode]125.Valid Palindrome
- LeetCode 125. Valid Palindrome
- [Leetcode] 125. Valid Palindrome
- 【LeetCode】125.Valid Palindrome
- 写出这个数
- hdu 1874 畅通工程续(bellman-ford,dijkstra)
- media server分析
- LVS负载均衡的三种模式和八种算法总结
- mysql 默认引擎innodb 初探(二)
- Easy-题目60:125. Valid Palindrome
- 三种妙法搞定冗余表数据一致性
- iOS中NSAttributedString用法
- IM通讯协议总结之二XMPP协议
- kali
- WIN7X64 安装Wampserver 2.5 启动提示“丢失MSVCR110.dll”
- HDU 1880 魔咒词典(字符串hash)
- java-Netty学习(2)
- 23种设计模式4--行为型模式(策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式)