Day 2 821. 字符的最短距离
821. 字符的最短距离
题目
1 | |
题目思路
- 建立一个 vector,存储遍历字符串后等于输入字符 c 的位置下标;
- 对于每一个位置,将其减去数组中的值,取绝对值,并返回其中最小的值;
- min(abs(i - pos[j]), abs(i - pos[j + 1])) 中会出现数组长度为一的特殊情况,此处的特殊情况之后会进一步优化。
题目代码
代码块
1 | |
1 | |
1 | |
复杂度
- 时间复杂度:O($n*k$),n 是 s 的长度,k 是字符 c 在字符串中出现的次数,k <= n。
- 空间复杂度:O(k),k 为字符 c 出现的次数,这是记录字符 c 出现下标的辅助数组消耗的空间。
Day 2 821. 字符的最短距离
https://chaggle.github.io/2021/09/11/leetcode/91-day/day-02-821-shortest-distance-to-a-character/