题目考察的知识点:字符串的遍历
题目解答方法的文字分析:先将字符串全中大写字母变为小写,然后遍历即可
本题解析所用的编程语言:c++
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param s string字符串 * @return bool布尔型 */ string convertToUpper(string& str) { string result; for (char c : str) { result += tolower(c); } return result; } bool isletter(char s) { if ((s >= 'a' && s <= 'z') || (s >= 'A' && s <= 'Z') || (s >= '0' && s <= '9')) return true; return false; } bool isPalindromeNickname(string s) { // write code here s = convertToUpper(s); int start = 0, end = s.size()-1; while (start < end) { if (!isletter(s[start])) { ++start; continue; } if (!isletter(s[end])) { --end; continue; } if (isletter(s[start]) && isletter(s[end])) { if (s[start] != s[end]) return false; ++start; --end; } } return true; } };