题目描述
blablabla
样例
func shortestToChar(s string, c byte) []int {
var locs []int
for i, xx := range s {
if byte(xx) == c {
locs = append(locs, i)
}
}
var ret = make([]int, len(s), len(s))
for i, _ := range ret {
ret[i] = len(s)
}
for i , _ := range s {
for j := 0 ; j < len(locs); j ++ {
ret[i] = min(ret[i], abs(i, locs[j]))
}
}
return ret
}
func min(a, b int) int {
if a > b {
return b
}
return a
}
func abs(a, b int) int {
if a < b {
return b - a
}
return a - b
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla