java – 如何使用多项式代替位来提高性能?

我有一个128位字符串,我的主管要求我将这128位表示为多项式.这是他正在写的论文的扫描:

他的想法是,由于我们从这些位中消除了0,我们将能够比我们处理所有位更快地执行下一个操作(大多数是位/多项式之间的XOR).

我理解要求是什么,我可以在纸上和应用程序中完成.但我的方式不会实现他的目标,即提高绩效.他实际上说有些图书馆已经这样做了,但遗憾的是我找不到任何图书馆.我发现的唯一一个是多项式类来评估多项式,这不是我想要的.

所以你们知道如何实现这一点来提高性能?任何代码/片段/文章非常感谢.

该应用程序是用Java编写的,如果这有任何区别的话.

谢谢,

莫塔

更新:

我的主管说这C library将完成任务.我无法弄清楚它是如何工作的以及如何做到这一点.

解决方法

你的主管熟悉 BitSet吗? 128位是16字节,可以存储为2个长.但是,使用BitSet,您不必担心处理2个long的组合. BitSet还为所有常见位操作提供方法.我认为你很难找到比这更好的解决方案.

多项式方法是一个非常酷的想法,但我认为它更具理论性而非实际性.

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...