我知道Java中的Collections.sort()
方法,但我认为quicksort值得记住并尝试。
我的工作目标是通用Java:Web,数据库访问,集成,而不是游戏开发人员,科学应用程序或依赖于高级算法的另一个。
在没有压力的Java开发人员访谈的情况下,我应该学习哪些算法?
答案 0 :(得分:3)
如果开发人员深入了解基本算法,我通常不在乎。如果他能够理解要求并将其翻译成正确,可测试且易于理解的代码片段,我会非常关心。
啊,我确实知道如何实现最常见的设计模式。他应该知道何时以及如何使用集合,线程和 - String#split
- 令人惊讶的是,有多少“开发人员”不知道如何阅读和处理简单的csv
文件。
答案 1 :(得分:0)
虽然我完全赞同约阿希姆的评论,但我会选择:收集选择。这本身不是算法,而是很好地了解哪个集合适用于哪个目的:
TreeSet
!LinkedHashMap
!使用它,以及对集合背后的设计模式的一些了解,你将经常回答使用knuth答案的算法问题(或微妙的变化:只要Sun开发人员正确实现它,我只需明智地选择)