题目考察的知识点:字符串的遍历
题目解答方法的文字分析:先将字符串全中大写字母变为小写,然后遍历即可
本题解析所用的编程语言: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;
}
};

京公网安备 11010502036488号