首先,我没有乘法,除法运算,所以我可以使用移位/加法,溢出乘法,预先计算等.我只是比较一个n位二进制数到另一个,但根据算法的数量运营似乎是巨大的.这里是 :
.
// _n = S/N;
// _N2 = Math.Pow(2,N)-1
// S=96, N=8, n=12, 2^N-1=255 for this specific case
// sourceEpsilons = list of blocks from input, List<string>[_n]
var X = new int[_n]; // result array of frequencies
for (var i = 0; i < X.Length; i++) X[i] = 0; // setting up
for (ulong l = 0; …Run Code Online (Sandbox Code Playgroud)