我有一个 256 x 256 布尔数组。这些数组不断变化,设置位实际上是随机分布的。
我需要在许多客户请求时将设置位的当前列表发送给他们。
以下数字是近似值。
如果我发送每个设置位的坐标:
set bits data transfer (bytes)
0 0
100 200
300 600
500 1000
1000 2000
如果我将距离(从左到右扫描)发送到下一个设置位:
set bits data transfer (bytes)
0 0
100 256
300 300
500 500
1000 1000
在这个稀疏数组中设置的典型位数约为 300-500,因此第二种解决方案更好。
有没有办法在不增加太多处理开销的情况下做得比这更好?