C++与字符判断的内置函数: isalpha(char c)判断c是否是字母 islower(char c)c是否是小写字母 isupper(char c)c是否是大写字母 isdigit(cchar c)c是否是数字 isalnum(char c)c是否是大写字母或数字 tolower(char c)转换为小写字母 toupper(char c)转换为大写字母 begin 方法:begin(); 解释:begin()函数返回一个迭代器,指向字符串的第一个元素.
end 方法:end(); 解释:end()函数返回一个迭代器,指向字符串的末尾(最后一个字符的下一个位置).
rbegin 方法:rbegin(); 解释:rbegin()返回一个逆向迭代器,指向字符串的最后一个字符。
rend 方法:rend(); 解释:rend()函数返回一个逆向迭代器,指向字符串的开头(第一个字符的前一个位置)。
题目描述: 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
class Solution { public: bool isPalindrome(string s) { if(s.length()==0) return true; string low; for(char c:s) { if(isalnum(c))//字符c是数字或者字母将它转化为小写字母 { low+=tolower(c); } } string res(low.rbegin(),low.rend());//字符串反序 return res==low; } };