Java中反序列化记录的排序字节数组



我有一个字节数组,它包含32字节的n记录,因此数组大小为n*32。这个数组备份一个优先级队列(它是一个堆),在那里我可以随意添加和删除记录。在某个时刻,当我只需要按排序顺序使用现有记录时,我会停止将新记录放在堆中。

当我有一堆对象时,在实践中,放弃堆并简单地对数组进行排序被证明是更快的。我想知道使用字节数组是否可以获得相同的结果。

要做到这一点,我必须对它进行排序。是否可以根据每个32字节的集群形成一个记录的事实对它进行分类?

是否可以根据每个32个集群的事实对其进行排序字节形成记录?

可能吗?算法上是的,但不使用(当前)JDK的任何排序功能——除非你先做一些预处理(琐碎的路径:构建一个新的n对象数组并对其进行排序),否则最终可能会比编写自己的排序实现花费更多(性能方面)。

最新更新