有没有人对一组常见的搜索和排序算法的 Java 代码实现有很好的参考。
给猫剥皮的方法有很多(很容易在网上找到各种算法的 Java 代码),但是是否有 Java 中实现这些各种算法的最有效方法的列表?
例如http://www.algorithmist.com,但大多数实现都是在 C/C++ 中。
干杯!
有没有人对一组常见的搜索和排序算法的 Java 代码实现有很好的参考。
给猫剥皮的方法有很多(很容易在网上找到各种算法的 Java 代码),但是是否有 Java 中实现这些各种算法的最有效方法的列表?
例如http://www.algorithmist.com,但大多数实现都是在 C/C++ 中。
干杯!
我建议查看 Java 标准库源代码本身。
Collections和Arrays类具有您可以研究的二进制搜索和二进制排序实现。
这是来自 openjdk 的 Collections.java 的源代码:http: //www.docjar.com/html/api/java/util/Collections.java.html
我发现 Sedgewick 的书“Java 中的算法(第 1-4 部分)”很有用。该代码可在线获得,但没有这本书可能很难理解。
一些用于地图、集合、列表等的标准算法是可用的。您必须从 Oracle-Java 主页 下载 src.zip,它是可用的。
对于常见的用例,算法应该非常有效,但当然,对于每个算法,都需要提供数据的最坏情况。因此,在特殊情况下,您将能够找到或生产更好的产品。
https://intelligentjava.wordpress.com/2014/07/05/sorting-algorithms/对实现和性能比较基准进行了很好的审查。