回文

• 字符串回文判断:用双指针法,一个指针指向字符串开头,一个指向末尾,同时向中间移动并对比对应字符,若都相等则是回文,只要有一处不等就不是,通过循环实现这个比较过程,还考虑了字符串长度为0或1的特殊情况,直接认定为回文。

• 数字回文判断:先分离数字各位存到数组,再利用数组元素构建反转后的数字,最后对比原数字和反转数字是否相等来判断
遇到问题及解决:

• 字符串回文判断:起初忘了处理长度0或1的特殊情况,添加对字符串长度判断逻辑,符合条件就直接返回是回文的结果。

• 数字回文判断:发现有整数溢出风险,后续计划优化此问题,完善处理机制,目前简单测试下没出问题。

#include
#include
#include
using namespace std;

bool isPalindrome(const string& s) {
    return equal(s.begin(), s.end(), s.rbegin());
}

int main() {
    string text = "racecar";
    if (isPalindrome(text)) {
        cout << text << &quot; 是回文。&quot; << endl;
    } else {
        cout << text << &quot; 不是回文。&quot; << endl;
    }
    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
09-16 16:47
门头沟学院 C++
点赞 评论 收藏
分享
点赞 评论 收藏
分享
09-13 10:40
门头沟学院 Java
听别人介绍,刷了一堆力扣题,考场上写函数,一直无法通过。赛后才知道要自己写输入输出,力扣害人不浅
Silencer76:输入输出练习题单,请https://www.nowcoder.com/exam/oj?page=1&tab=%E7%AE%97%E6%B3%95%E7%AC%94%E9%9D%A2%E8%AF%95%E7%AF%87&topicId=372
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务