leetcode9

古城微笑少年丶 2022-08-08 19:54 141阅读 0赞

Palindrome Number

回文数,并且题目要求不能使用额外的空间。

即,不能使用回文串的方法。

虽然这样,这道题依然不是很难,即对每个数字,从个位起不断乘10,最后再拿结果与原数比较。

唯一需要注意的是,在本题中,负数不作为回文数考虑范围之内,但是输入依然可能为负,此时直接返回false即可。

代码:

  1. class Solution {
  2. public:
  3. bool isPalindrome(int x) {
  4. if (x<0)
  5. return false;
  6. long long int sum =0;
  7. long long int origin = x;
  8. while(x)
  9. {
  10. int num = x %10;
  11. sum = sum*10 + num;
  12. x/=10;
  13. }
  14. if(sum == origin)
  15. return true;
  16. else
  17. return false;
  18. }
  19. };

发表评论

表情:
评论列表 (有 0 条评论,141人围观)

还没有评论,来说两句吧...

相关阅读

    相关 leetcode9

    回文数(判断一个数是否为回文数) 总结:我的思想其实就是把每一位都取出来组成数组 然后第一位和最后一位比较 得出结果 //begin 用于判断while循环是否

    相关 leetcode9

    Palindrome Number 回文数,并且题目要求不能使用额外的空间。 即,不能使用回文串的方法。 虽然这样,这道题依然不是很难,即对每个数字,从个位起不断乘10,

    相关 二刷 leetcode9

    21. 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3-

    相关 LeetCode 9

    问题描述: 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: