Leetcode #9 Solution
来源:互联网 发布:优酷 java待遇 编辑:程序博客网 时间:2024/05/17 06:47
// Rewrite in Markdown mode. 16/9/13
Problem Description
- Determine whether an integer is a palindrome. Do this without extra space.
Some Details
- What is the meaning of ‘extra space’?
- Try to use less variables to solve this problem.
Solution
- Compare the digits one by one. The first with the last, the second with the second to last and so on…
- How to get each digit?
- For a number ‘x’, x=x0+x1*10+x2*10^2+…+xn*10^n. (xi means the ith digit in ‘x’)
- So xi=x % [10^(i+1)] / (10^i). With this formula, you could solve this problem.
- However, Suppose i=n, xn=x % [10^(n+1)] / (10^n).
- 10^(n+1)>x. So 10^(n+1) may cause overflow, you need a special sentence for it.
I use 5 variables to solve this problem. And the time complexity is O(N^2)(N is the length of x). I am still trying to solve it better.
// 1 variable and O(N) to solve it. Read “Leetcode #9 Discussion”.
You could find more details in my code.
Code
bool isPalindrome(int x) { if(x<0) return false; int i,j,t,l,a; i=x; j=0; while (i) { j++; i/=10;} for (i=1;i<=j/2;i++) { l=1; for (t=1;t<=i;t++) l*=10; a=x %l/(l/10); if (i==1) { for (t=i+1;t<=(j-i);t++) l*=10; if (a!=x/l) return false; }else { for (t=i+1;t<=(j-i+1);t++) l*=10; if (a!=x %l/(l/10)) return false; } } return true; }
0 0
- Leetcode #9 Solution
- LeetCode #9 Palindrome Number C# Solution
- [Leetcode Solution] Sort List
- [Leetcode Solution] LRU Cache
- LeetCode : atoi My solution
- Triangle LeetCode |My solution
- LeetCode Anagrams My solution
- [LeetCode] 3Sum Solution
- [LeetCode] 4Sum Solution
- [LeetCode] Anagrams solution
- [LeetCode] Surrounded Regions, Solution
- [LeetCode] Word Break, Solution
- [LeetCode] Majority Element solution
- [LeetCode] Wildcard Matching, Solution
- [LeetCode] 3 Sum, Solution
- [LeetCode] Climbing Stairs, Solution
- [LeetCode] Combination Sum, Solution
- [LeetCode] Combinations, Solution
- C#处理和对接HTTP接口请求
- webFrom
- 关于asm的隐含参数_disable_rebalance_compact
- sqoop1.4.2 从Oracle装载数据到HDFS
- linux开发环境搭建
- Leetcode #9 Solution
- 在.net(C# or vb.net)中如何用户自定义消息,并在窗体中处理这些消息。
- javascript放大器实现
- java 句子翻转问题与字符串翻转
- 字符串问题
- hdu 5876 求补图上的最短路
- 扩展方法
- maven常用插件配置
- DataSet,DataTable,DataReader,DataAdapter 区别