近期一直在用python刷leetcode的題,**都提交到了github上了:
給定乙個字串s
和乙個字元c
。返回乙個代表字串s
中每個字元到字串s
中的字元c
的最短距離的陣列。
示例 1:
輸入: s = "loveleetcode", c = 'e'
輸出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0]
說明:
字串s
的長度範圍為[1, 10000]
。
c
是乙個單字元,且保證是字串s
裡的字元。
s
和c
中的所有字母均為小寫字母。
思路:第一步:遍歷一次把c在s中的索引全部找出;
第二步:遍歷一次s,同時遍歷到每乙個元素時都讓這個元素的索引減去list中的所有值,求絕對值最小。
時間複雜度:o(n)
class solution(object):
def shortesttochar(self, s, c):
""":type s: str
:type c: str
:rtype: list[int]
"""list = self.indexchar(s,c)
result =
for i in range(len(s)):
return result
def indexchar(self,s,c):
"""找出s中c的所有下標索引
"""res =
if len(s) == 0 or (c not in s):
return -1
for i in range(len(s)):
if s[i] == c:
return res
Leetcode 821 字元的最短距離
給定乙個字串 s 和乙個字元 c。返回乙個代表字串 s 中每個字元到字串 s 中的字元 c 的最短距離的陣列。示例 1 輸入 s loveleetcode c e 輸出 3,2,1,0,1,0,0,1,2,2,1,0 說明 字串 s 的長度範圍為 1,10000 c 是乙個單字元,且保證是字串 s ...
LeetCode821 字元的最短距離
題目描述 給定乙個字串s和乙個字元c。返回乙個代表字串s中每個字元到字串s中的字元c的最短距離的陣列。注意 字串s的長度範圍為 1,10000 c是乙個單字元,且保證是字串s裡的字元。s和c中的所有字母均為小寫字母。示例 輸入 s loveleetcode c e 輸出 3,2,1,0,1,0,0,...
leetcode 821 字元的最短距離
給定乙個字串 s 和乙個字元 c。返回乙個代表字串 s 中每個字元到字串 s 中的字元 c 的最短距離的陣列。示例 1 輸入 s loveleetcode c e 輸出 3,2,1,0,1,0,0,1,2,2,1,0 說明 字串 s 的長度範圍為 1,10000 c 是乙個單字元,且保證是字串 s ...