为了最小化总校验开销 S=∑1≤i<j≤n(ai⊕aj),可以利用异或运算按位独立的性质。对于二进制下的第 t 位(权重 2t),设该位为 1 的编号个数为 ct,则这一位对 S 的贡献为 ct×(n−ct)×2t。为了最小化该贡献,希望每一位的 ct 尽可能接近 0 或 n,即所有编号在该位上尽量保持一致。尤其对于高位而言,一旦出现 0 与 1 混杂,代价会很大。
基于以上分析,一种最优策略是:
考虑一个数据传输协议:你需要为 n 个不同的数据包分配互不相同的正整数编号 a1,a2,…,an。
所有数据包两两配对时,会产生一个校验开销。对于编号 x 与 y,定义它们的配对开销为 x⊕y,其中 ⊕ 表示按位异或运算(即二进制无进位相加)。
定义整个系统的总校验开销为:
S=1≤i<j≤n∑(ai⊕aj)
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册