标签:style blog color io os for sp div on
题目:Determine whether an integer is a palindrome. Do this without extra space.
刚开始看到题目的时候想着用栈来处理,每进来一个数与栈顶元素比较相同则栈顶元素处栈,不同则元素入栈,最后栈为空或剩一个数为真,我是以“1234321”来考虑的,但是提交的时候发现存在“100”此种情况,因此分为两种类型来处理,奇数个数和偶数个数。
放了十一放的一直心不在焉的,怕累没出去玩,呆着似乎更累。师兄师姐都出去找工作啦,God bless them。
代码如下:
1 class Solution: 2 # @return a boolean 3 def isPalindrome(self, x): 4 if(x<0): 5 return False 6 elif(0<=x<10): 7 return True 8 else: 9 stack=[] 10 tmp_str=str(x) 11 if(len(tmp_str)%2==0): 12 for i in xrange(len(tmp_str)): 13 if(len(stack)==0): 14 stack.append(tmp_str[i]) 15 elif(stack[-1]==tmp_str[i]): 16 del(stack[-1]) 17 else: 18 stack.append(tmp_str[i]) 19 if(len(stack)==0): 20 return True 21 else: 22 return False 23 else: 24 mid=len(tmp_str)/2 25 tmp_a=tmp_str[0:mid] 26 end=len(tmp_str) 27 tmp_b=tmp_str[mid+1:end] 28 if(tmp_a==tmp_b[::-1]): 29 return True 30 else: 31 return Fals
leetcode Palindrome Number Python
标签:style blog color io os for sp div on
原文地址:http://www.cnblogs.com/echo-lsh/p/4026684.html