leetcode 9

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 9相关的知识,希望对你有一定的参考价值。

判断一个数是否为回文数,不利用额外的空间。

思路:将数反转后进行比较。

注意:反转之后数越界的判断,若越界,则不是回文数;负数不是回文数;

代码如下:

 1 class Solution {
 2 public:
 3     bool isPalindrome(int x) {
 4         int result = 0;
 5         int y = x;
 6         if(x == 2147483648 || x < 0)
 7         {
 8             return false;
 9         }
10         if(abs(x) < 1000000000)
11         {
12            while(x != 0)
13            {
14               result = result * 10 + x % 10;
15               x = x / 10;
16            }
17        }
18        else
19        {
20            int a[10] = {2,1,4,7,4,8,3,6,4,8};
21            int i = 0;
22            int flag = abs(x);
23            while(flag != 0)
24            {
25                if((flag % 10) > a[i])
26                {
27                     return 0;
28                }  
29                else if((flag % 10) < a[i])
30                {
31                    while(x != 0)
32                    {
33                        result = result * 10 + x % 10;
34                        x = x / 10;
35                    }
36                    if(result == y)
37                    {
38                         return true;
39                    }
40               }
41               flag /= 10;
42               i++;
43             }
44         }
45         if(result == y)
46         {
47             return true;
48         }
49         return false;
50     }
51 };

 

以上是关于leetcode 9的主要内容,如果未能解决你的问题,请参考以下文章

超级有用的9个PHP代码片段

VSCode自定义代码片段9——JS中的面向对象编程

LeetCode 1024. 视频拼接(每日一题)

;~ 小部分AutoHotkey源代码片段测试模板2019年10月9日.ahk

leetcode_1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold_[二维前缀和](代码片段

贪心算法:划分字母区间