2012-09-12 36 views
3

我最近参加了一次采访,要求我使用Java中的数组实现链接列表。我想不出一个体面的方式来做到这一点。有没有合法的方式来做到这一点?使用Java中的数组实现链接列表

+1

当然有。有几个关于性能的警告我会让你弄清楚的。 –

+0

相关:http://stackoverflow.com/questions/10477754/implement-linked-list-using-array-advantages-disadvantages –

+0

[This] [1]可能会有所帮助。通过链接列表映射实现。 [1]:http://stackoverflow.com/questions/6824571/java-is-it-possible-to-implement-a-custom-map-of-widgets-using-widget-class-或 – vector

回答

1

您可以(例如)通过将第一个数据项放置在数组的元素中,并将第二个元素中的下一个项的索引放入整数链表中。虽然,这会限制您存储与索引兼容/可转换为索引的类型。

0

当我们谈论我们用于查看Java列表的方式时,这个问题并没有什么意义。

有一个接口List,它定义了一个get(int index) a set(int index, T value)方法,它用于访问或设置List的数据。

链接列表是一些ListItem类的实例的数量,每个实例指向下一个,并且LinkedList本身通常只持有对第一个ListItem的引用。然后,如果你想要列表的第三个条目,则沿着引用“走”直到第三个条目。

在这个结构中强制一个数组可以消除LinkedList的整个概念。