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