LeetCode(35):Palindrome Number

原创 2015年07月10日 09:26:13

Determine whether an integer is a palindrome. Do this without extra space.

Some hints:

Could negative integers be palindromes? (ie, -1)

If you are thinking of converting the integer to string, note the restriction of using extra space.

You could also try reversing an integer. However, if you have solved the problem "Reverse Integer", you know that the reversed integer might overflow. How would you handle such case?

There is a more generic way of solving this problem.

       判断一个数是不是回文数,首先负数不可能是回文数;其次要求不能用“额外”的存储空间,这句话的意思并非表示不能用存储空间,应该是表示不能用过多的存储空间;那么可以判断首位与尾位是数值是否相等,再去掉头尾,再次判断首位和尾位是否相等,直至该值为0为止。


class Solution {
public:
    bool isPalindrome(int x) {
       	int a = static_cast<int>(floor(log10(x)) + 1);	
    	int b= static_cast<int>(pow(10, a - 1));
    
    	if (x < 0)
    		return false;
    	while (x)
    	{
    		if (x % 10 != x / b)return false;
    				
    		x = x % b;//去掉最高位
    		x = x / 10;//去掉最低位
    		//注意,以上两够不可逆,取余不一定能去掉最后一位
    		b = b / 100;
    	}
    	return true;
    }
};



LeetCode 009. Palindrome Number

Palindrome Number  Total Accepted: 16218 Total Submissions: 55721My Submissions Determine wheth...

Leetcode #9 Palindrome Number

Source: https://leetcode.com/problems/palindrome-number/ 9. Palindrome Number Determine whether an ...
  • mu_jun
  • mu_jun
  • 2016年09月07日 01:45
  • 84

LeetCode : 9. Palindrome Number

Determine whether an integer is a palindrome. Do this without extra space. “回文”是指正读反读都能读通的句子,它是古今中外都...

Leetcode第九题_Palindrome Number

Palindrome Number Some hints:Could negative integers be palindromes? (ie, -1)If you are thinking of ...
  • bigevil
  • bigevil
  • 2015年05月19日 00:22
  • 378

[LeetCode] #9 Palindrome Number

好久没有刷题了,现在开始刷LeetCode  GitHub : https://github.com/MummyDing/LeetCode Source : https://leetcode.com/...

Reverse Integer && Palindrome Number-LeetCode

Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 click ...
  • KINGHMY
  • KINGHMY
  • 2017年02月21日 12:01
  • 148

LeetCode-9. Palindrome Number(回文数)

1.题目描述Determine whether an integer is a palindrome. Do this without extra space.Some hints: Could n...

LeetCode || Palindrome Number

Determine whether an integer is a palindrome. Do this without extra space. 判断一个int值是否为回文数。 本题有几点需要...

LeetCode OJ9 Palindrome Number 小结

Palindrome Number题目描述Determine whether an integer is a palindrome. Do this without extra space解题思路我们...

《LeetBook》leetcode题解(9):Palindrome Number[E]——回文数字

009. Palindrome Number[E] Palindrome NumberE 问题 思路 思路1 思路2 问题:Determine whether an integer is a pali...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode(35):Palindrome Number
举报原因:
原因补充:

(最多只允许输入30个字)