今天是2020.10.12日,今天不知道是寫部落格的第幾天了,選擇了一道比較的簡單的題自己進行練習,隔一段時間不敲**就會感覺到手生,還的多多練習呀,我沒天都會更新一道演算法的題,下面的就讓我們看看這道題的倆種解法,先看看題目
判斷乙個整數是否是回文數。回文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。
示例 1:
輸入: 121
輸出: true
示例 2:
輸入: -121
輸出: false
解釋: 從左向右讀, 為 -121 。 從右向左讀, 為 121- 。因此它不是乙個回文數。
示例 3:
輸入: 10
輸出: false
解釋: 從右向左讀, 為 01 。因此它不是乙個回文數。
這個題不是難題,有點簡單,讓我看看這道題吧,
第一種方法進行解析:
class
solution
(object):
defispalindrome
(self, x)
:"""
:type x: int
:rtype: bool
"""lis=
list
(str
(x))
while
len(lis)
>1:
if lis.pop(0)
!=lis.pop:
return
false
return
true
第二種的方法:
class
solution
(object):
defispalindrome
(self, x)
:"""
:type x: int
:rtype: bool
"""lis=
list
(str
(x))
l,r=0,
len(lis)-1
while lif lis[l]
!=lis[r]
:return
false
l+=1 r-=
1return
true
兩種方法都是比較簡單的方法,希望大家可以理解。 python 判斷回文數的兩種方法
轉化成字串或列表 class solution object def ispalindrome num return str num str num 1 solution.ispalindrome 54645 純數學方法 class solution object def ispalindrome ...
力扣 超級回文數
如果乙個正整數自身是回文數,而且它也是乙個回文數的平方,那麼我們稱這個數為超級回文數。現在,給定兩個正整數 l 和 r 以字串形式表示 返回包含在範圍 l,r 中的超級回文數的數目。示例 輸入 l 4 r 1000 輸出 4 解釋 4,9,121,以及 484 是超級回文數。注意 676 不是乙個超...
力扣兩數相加
描述 給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。示例 輸入 2 4 3 5 6 4 輸出 7 0 8 definition for singl...