leetcode9 回文數
題目:解題思路如下:
# 判斷乙個整數是否是回文數。
# 回文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。
# 1先判斷,若為負,返回false;
# 2把數字轉換為列表,進行翻轉;翻轉後的列表再轉換回數字;
# 3然後判斷轉換前後的2個數字是否相等。
1return x == xnewclass
solution:
2def ispalindrome(self, x: int) ->bool:
3if x <0:
4return
false
5 xnew =list(str(x))
6xnew.reverse()
7 xnew = int(''
.join(xnew))
8 #if x ==xnew:9 # return
true
10 #else
:11 # return false
#看了一道別人的題解,寫的挺好的,記錄一下。
# 1先轉換為字串,計算其長度
# 2取長度的一半,判斷字串左右兩邊是否相等。
# 注:左--從左往右,右--從右往左
1class
solution:
2def ispalindrome(self, x: int) ->bool:
3 s =str(x)
4 n =len(s)
5 h = n // 2
6return s[0:h] == s[-1:-h-1:-1]
注:關於字串的索引,正索引和負索引不一樣。
每日一道演算法題
no.1 設指標變數fron t表示鏈式佇列的隊頭指標,指標變數rear表示鏈式佇列的隊尾指標,指標變數s指向將要入佇列的結點x,則入佇列的操作序列為 a.front next s front s b.s next rear rear s crear next s rear s d.s next f...
每日一道演算法題
no.1 若有 18 個元素的有序表存放在一維陣列 a 19 中,第乙個元素放 a 1 中,現進行二分查詢,則查詢 a 3 的比較序列的下標依次為 a.1,2,3 b.9,5,2,3 c.9,5,3 d.9,4,2,3 答案 d.第一次查詢,隊首為下標1,隊尾下標18,所以是 1 18 2 9 第二...
每日一道演算法題 TwoSum
167.給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 index1 和 index2 不是從零開始的。你可以假設每個輸入只對應唯一的答案,而且你不可...