我被问到这样的问题,我有自己的话,但是我不确定要说什么利弊? Microsoft向其候选人之一问了这个问题。

单链表使您可以单向前进。而双向链表有下一个和上一个两个方向。

这是一张很好的图片,它绘制了单链和双链列表。

但是,您如何以更有条理的方式解释这些项目的利弊?

最佳答案



一切都取决于使用情况。这里有一个权衡。

单链列表在实现方面更简单,并且通常只需要将转发成员引用保持在适当的位置,因此对内存的需求较小。

双链表的迭代效率更高,尤其是当您需要反向迭代时(单链表的效率极低),并且删除特定节点的效率更高。

话虽这么说-由于您具有标记的.NET,因此双链接列表还具有以 LinkedList<T> 类的形式直接位于框架中的优势。这提供了巨大的优势,因为您不必实现,测试和维护自己的集合类。

关于.net - 微软问:单列出还是双列出?使用每种方法的利弊是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10708790/

10-17 00:11