Searching&amp ;;的高效实施用Java排序算法

时间:2012-04-15 05:40:28

标签: java performance algorithm search sorting

是否有人对常见搜索和排序算法的一组Java代码实现有很好的参考。

有很多方法可以对猫进行换肤(很容易在网上找到各种算法的Java代码),但是有没有一个Java实现这些不同算法的最有效方法列表?

例如http://www.algorithmist.com,但大多数实现都是用C / C ++。

干杯!

5 个答案:

答案 0 :(得分:3)

我建议查看Java标准库本身的源代码。

CollectionsArrays类具有您可以学习的二进制搜索和二进制排序实现。

以下是来自openjdk的Collections.java的来源:http://www.docjar.com/html/api/java/util/Collections.java.html

答案 1 :(得分:1)

我发现Sedgewick的书“Java中的算法(第1-4部分)”很有用。代码是available online,但如果没有这本书,可能很难理解。

答案 2 :(得分:1)

可以使用地图,集合,列表等的一些标准算法。您必须 download the src.zip from the Oracle-Java homepage,它在哪里可用。

对于常见用例,算法应该非常有效,但当然,对于每种算法,都会提供最坏情况的数据。因此,在特殊情况下,您将能够找到或生产出更好的产品。

答案 3 :(得分:0)

算法的运行时复杂性与它实现的编程语言无关 - 所以你不应该真正关心太多。但既然你问,我会考虑使用grepcode。例如,当我搜索“java quicksort”时,看看我found

答案 4 :(得分:0)

https://intelligentjava.wordpress.com/2014/07/05/sorting-algorithms/对性能比较的实施和基准进行了很好的审核。