回文子串
給定乙個字串,你的任務是計算這個字串中有多少個回文子串。
具有不同開始位置或結束位置的子串,即使是由相同的字元組成,也會被視作不同的子串。
示例 1:
輸入:「abc」
輸出:3
解釋:三個回文子串: 「a」, 「b」, 「c」
示例 2:
輸入:「aaa」
輸出:6
解釋:6個回文子串: 「a」, 「a」, 「a」, 「aa」, 「aa」, 「aaa」
class
solution
:def
__init__
(self)
: self.res =
0def
count_num
(self, start:
int, end:
int, s:
str)
->
none
:while start >=
0and end <
len(s)
and s[start]
== s[end]
: self.res +=
1 start -=
1 end +=
1def
countsubstrings
(self, s:
str)
->
int:
for i in
range
(len
(s))
: self.count_num(i, i, s)
# 奇數的情況,從本身開始向兩邊擴散
self.count_num(i, i+
1, s)
# 偶數的情況,從本身開始向兩邊擴散 中心點是兩個
return self.res
leetcode647 回文子串
給定乙個字串,你的任務是計算這個字串中有多少個回文子串。具有不同開始位置或結束位置的子串,即使是由相同的字元組成,也會被計為是不同的子串。示例 輸入 aaaba 輸出 9 解釋 a aa a aa aaa a b aba a 奇回文 如 aba 和偶回文 如abba 歸一化處理 i 0123 47s...
leetcode 647 回文子串
給定乙個字串,你的任務是計算這個字串中有多少個回文子串。具有不同開始位置或結束位置的子串,即使是由相同的字元組成,也會被計為是不同的子串。示例 1 輸入 abc 輸出 3 解釋 三個回文子串 a b c 示例 2 輸入 aaa 輸出 6 說明 6個回文子串 a a a aa aa aaa 注意 輸入...
LeetCode 647 回文子串
題目鏈結 題目描述 給定乙個字串,你的任務是計算這個字串中有多少個回文子串。具有不同開始位置或結束位置的子串,即使是由相同的字元組成,也會被計為是不同的子串。示例輸入 abc 輸出 3 解釋 三個回文子串 a b c 輸入 aaa 輸出 6 說明 6個回文子串 a a a aa aa aaa 注意 ...