821. Shortest Distance to a Character
Last updated
Last updated
/**
* Time complexity :
* Space complexity :
*/
class Solution {
public int[] shortestToChar(String s, char c) {
if(s == null || s.length() == 0) {
return new int[0];
}
int n = s.length();
int[] result = new int[n];
for(int i = 0, index = Integer.MAX_VALUE; i < n; i++) {
if(s.charAt(i) == c) {
index = i;
}
result[i] = Math.abs(i-index);
}
for(int i = n-1, index = Integer.MAX_VALUE; i >= 0; i--) {
if(s.charAt(i) == c) {
index = i;
}
result[i] = Math.min(result[i], Math.abs(i-index));
}
return result;
}
}