我一直在阅读有关JAVA的两本书,在介绍数据结构时,我开始做一些关于“QUEUE”实施的在线研究。我在FLEX中有广泛的背景,但ACTIONSCRIPT与高级语言无法比较。
让我们说如果我在面试并要求实施一个对象队列,我应该如何追求它?我不是在寻找代码帮助,我想你会快速回答什么?我去过Java在线文档并且理解有13个已知的实现类,而“LinkedList”就是其中之一。
使用“LinkedList”实施代码,Google搜索返回的结果比其他任何结果都多。
如果你发现这个问题无论如何都是垃圾或毫无意义,我道歉。
答案 0 :(得分:2)
您知道队列的概念是什么以及它与堆栈的区别(密切相关的数据结构)吗?如果是这样,您应该能够想出多种方法来实现它。
哪个最好取决于它用于解决的任务的确切要求。
因此,对该面试问题的正确回答不是开始编码,而是要求他们提供有关您的实施必须解决的要求的更多信息。性能?内存大小?多任务?对最大队列深度的任何限制,例如防止像DOS攻击这样的事情?什么被排队 - 对象,原始人,其他?具体种类?参数化类型?是否有任何值应该被丢弃(可能不应该将null排队)?
了解要求后,您应该能够判断哪个答案是合适的。在不询问要求的情况下开始编码会立即为您带来缺点。