合并排序是一种相当常见的排序算法,我已经编写了一个有效的合并排序算法。然后我想优化它。第一步是将它从递归转换为迭代,我这样做了。然后我无法辨别还有什么可以优化的。在浏览了互联网上的大量文章后,我得到了两种机制,使用多合并排序和平铺合并排序。然而,这些文档都没有提供任何伪代码,甚至都没有解释如何做到这一点,以及它如何提供作者所说的优势,比如缓存友好和改进的局部性命中。
任何人都可以详细说明这个问题,如果可能的话,提供一些伪代码?具体来说,我想知道如何使它对缓存友好。我完全不知道这些东西是什么,否则我会自己尝试的。