如何找到双变量的 log 2 基数?

Mic*_*nrs 1 java math methods class

我正在尝试计算一些双形式数字的 log 2 基数,但似乎图书馆没有为此提供标准方法。

我尝试了这段代码,但发生了错误。

        double entropy=0;
        for(int i=0; i<26;i++){
            entropy+=-possibilityCounter[i]*log2(possibilityCounter[i]);
        }
Run Code Online (Sandbox Code Playgroud)

注意:可能计数器表充满了双变量,例如 0.00133536

有什么建议吗?

小智 9

您可以像这样从自然对数计算对数基数 2

public double log2(double v) {
    return Math.log(v) / Math.log(2);
}
Run Code Online (Sandbox Code Playgroud)