首页 > 试题广场 >

判断回文串

[编程题]判断回文串
  • 热度指数:30469 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
判断题目给出的字符串是不是回文,仅考虑字符串中的字母字符和数字字符,并且忽略大小写
例如:"nowcoder Is Best tsebsi: redoc won"是回文
"race a car"不是回文
注意:
你有没有考虑过字符串可能为空?这是面试时应该提出的一个好问题。
针对这个问题,我们定义空字符串是回文
示例1

输入

"nowcoder Is Best tsebsi: redoc won"

输出

true
示例2

输入

"race a car"

输出

false
头像 立行
发表于 2020-09-24 20:22:38
解法 天生python适合列表生成式 isalnum字符串方法留下字母与数字 列表生成式根据步骤1计算留下字符串,并置为小写 列表切片反转比较内容 l == l[::-1] 返回结果class Solution: def isPalindrome(self , s ): l = [x. 展开全文
头像 SoMustYY
发表于 2021-11-03 16:58:00
双指针匹配 + ASCII解法 遍历字符数组的循环条件: while(left < right) left和right最开始分别指向字符串的首部和尾部,通过字符串转换为字符数组,遍历匹配left和right指向的数组元素是否相等 字符串中只考虑数字和大小写字母,则遍历过程中,如果遇到其他字符 展开全文
头像 you_config
发表于 2025-04-28 23:11:47
# # # @param s string字符串 # @return bool布尔型 # class Solution: def isPalindrome(self , s ): # write code here d = [] for c 展开全文
头像 健康快乐最重要
发表于 2020-03-09 11:32:07
很简单的判断是否是回文的题,英文:palindrome表示回文可以通过递归的方法,也可以通过直接循环的方法判断。一、递归(不知道为什么内存超了) bool is_palindrome(string s,int i,int j){ if(s[i]!=s[j])return false; 展开全文
头像 华科不平凡
发表于 2020-08-10 11:41:54
最直接的想法是双“指针”法,从两端向中间扫描。但题目说的递归法,想了老半天也没想到,看了大佬的解答,原来递归法还需要借助辅助空间。 有两个trick,轻轻松松三分钟,工具函数都不用写: tolower函数 isalnum函数 class Solution { public: /** 展开全文
头像 FLOYD20191121155229
发表于 2024-09-23 14:55:27
#include <cctype> class Solution { public: /** * * @param s string字符串 * @return bool布尔型 */ bool isPalindrome(strin 展开全文

问题信息

难度:
105条回答 28175浏览

热门推荐

通过挑战的用户

查看代码
判断回文串