3

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

给猫剥皮的方法有很多(很容易在网上找到各种算法的 Java 代码),但是是否有 Java 中实现这些各种算法的最有效方法的列表?

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

干杯!

4

5 回答 5

3

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

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

这是来自 openjdk 的 Collections.java 的源代码:http: //www.docjar.com/html/api/java/util/Collections.java.html

于 2012-04-15T06:07:17.567 回答
1

我发现 Sedgewick 的书“Java 中的算法(第 1-4 部分)”很有用。该代码可在线获得,但没有这本书可能很难理解。

于 2012-04-15T05:53:16.140 回答
1

一些用于地图、集合、列表等的标准算法是可用的。您必须从 Oracle-Java 主页 下载 src.zip,它是可用的。

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

于 2012-04-15T06:05:53.443 回答
0

算法的运行时复杂性与其实现的编程语言无关 - 所以你不应该在意。但是既然你问了,我会考虑使用grepcode。例如,看看我在搜索“java quicksort”时发现了什么。

于 2012-04-15T05:53:24.250 回答
0

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

于 2015-02-27T09:48:43.057 回答