小编Alc*_*lcz的帖子

繁重的计算分析/优化

首先,我没有乘法,除法运算,所以我可以使用移位/加法,溢出乘法,预先计算等.我只是比较一个n位二进制数到另一个,但根据算法的数量运营似乎是巨大的.这里是 :

  1. 给出了0和1的序列,它被分成块.假设序列的长度为S,则块的长度为N,其为2的幂(4,8,16,32等).块数量是n = S/N,这里没有火箭科学.
  2. 根据所选择的N i构建一组所有可能的N位二进制数,它是2 ^ N-1个对象的集合.
  3. 在此之后,我需要将每个二进制数与源序列中的每个块进行比较,并计算每个二进制数匹配的次数,例如:
    S:000000001111111100000000111111110000000011111111 ...(0000000011111111重复6次,16位x 6 = 96位 总计)
    N:8
    个街区:{00000000,111111111,00000000,111111,...}
    计算:

.

// _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)

c# c++ algorithm statistics optimization

1
推荐指数
1
解决办法
442
查看次数

标签 统计

algorithm ×1

c# ×1

c++ ×1

optimization ×1

statistics ×1