821 字元的最短距離(C )

2021-08-28 14:45:36 字數 887 閱讀 5371

給定乙個字串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裡的字元。

sc中的所有字母均為小寫字母。

【思路】該題可以分情況討論:

情況一:被計算長度的那個字元只有一邊有給定的字元c,即開頭和結尾;

情況二:被計算長度的那個字元夾在兩個c字元中間。

} else//找到下乙個c字元

}else相同c字元之間為奇數個字元

ret[i + (pos - i) / 2] = (pos - i) / 2 + 1;

}} i += pos - i + 1;//移動到c的下乙個字元

} return ret;

}};

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裡的字元。s和c中的所有字母...

821 字元的最短距離

給定乙個字串 s 和乙個字元 c。返回乙個代表字串 s 中每個字元到字串 s 中的字元 c 的最短距離的陣列。示例 1 輸入 s loveleetcode c e 輸出 3 2,1 0,1 0,0 1,2 2,1 0 思路 對於每個字元 s i 試圖找出距離向左或者向右下乙個字元 c 的距離。答案就...

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