Leetcode 821 字元的最短距離

2021-08-25 11:45:07 字數 1069 閱讀 2721

給定乙個字串 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 中的所有字母均為小寫字母。

沒有更好的想法之前,採取最笨重的方法

想法一:將所有目標char的位置記錄,假設n個,遍歷整個字串假設長len,則做len*n次運算比較最小的存起來。

class solution 

int ditance = new int[s.length()];//動態new陣列,初始值都為0

時間複雜度o(n2)

1、求最小的,在初始值設定的時候要引起注意;

若初始值設為0,則最小值都為0,應設為他的最大範圍之上,由題意知s 的長度範圍為 [1, 10000],最小距離的最大值為10000

但設定成 int min =integer.max_value;最萬無一失

2、動態new出來的陣列,未賦值時,初始值都為0

leetcode 821 字元的最短距離

近期一直在用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的長度範圍為...

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 ...