谷歌无法帮助我,所以这是我的翻译:在两个选择算法FloydRivest算法和Introselect中,哪一个性能更好。 我认为是FloydRivest算法,但想要100%确定。 如果存在更好的算法,我很乐意了解它们。
警告!原始的Floyd-Rivest论文提供了他们算法的一个实现示例(这是维基百科上列出的实现方法,截至本文撰写时)。然而,这只是一个简化版本。根据我的测试,这个简化版本实际上非常慢!如果您想要一个快速的实现,我认为您需要实现完整的算法。我建议阅读Krzysztof C. Kiwiel的论文“关于Floyd和Rivest的SELECT算法”。他对如何实现快速的Floyd-Rivest选择算法给出了相当好的描述。