在刷题过程中需要使用到log2(N),但是java中只有log(double),log10(double)等等函数,这时用换底公式就可以自己实现log2(N).
换底公式:
所以:log2N=logeN/loge2,logeN代表以e为底的N的对数,loge2代表以e为底的2的对数。
实现为:
public double log2(double N) {
return Math.log(N)/Math.log(2);//Math.log的底为e
}
在刷题过程中需要使用到log2(N),但是java中只有log(double),log10(double)等等函数,这时用换底公式就可以自己实现log2(N).
换底公式:
所以:log2N=logeN/loge2,logeN代表以e为底的N的对数,loge2代表以e为底的2的对数。
实现为:
public double log2(double N) {
return Math.log(N)/Math.log(2);//Math.log的底为e
}