821. Shortest Distance to a Character
Problem:
Given a string S and a character C, return an array of integers representing the shortest distance from the character C in the string.
Example 1:
Input: S = "loveleetcode", C = 'e'
Output: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0]
Note:
- S string length is in [1, 10000].
- C is a single character, and guaranteed to be in string S.
- All letters in S and C are lowercase.
思路:
Solution (C++):
vector<int> shortestToChar(string S, char C) {
int n = S.length();
vector<int> res(n, INT_MAX), index;
for (int i = 0; i < n; ++i) {
if (S[i] == C) index.push_back(i);
}
for (int i = 0; i < n; ++i) {
for (auto x : index) {
res[i] = min(res[i], abs(i-x));
}
}
return res;
}
性能:
Runtime: 16 ms Memory Usage: 6.4 MB
思路:
Solution (C++):
性能:
Runtime: ms Memory Usage: MB
相关链接如下:
知乎:littledy
GitHub主页:https://github.com/littledy
github.io:https://littledy.github.io/
欢迎关注个人微信公众号:小邓杂谈,扫描下方二维码即可
作者:littledy
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。