leetcode338.比特位运算

func countBits(n int) []int {
    //核心思想:res[i]=res[i&i-1]+1
    res:=make([]int,n+1)
    res[0]=0
    for i:=1;i<n+1;i++{
       res[i]=res[i&(i-1)]+1
    }

    return res
}

Last updated