給定乙個字串 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 ...