List的ListIterator种类

时间:2017-08-04 06:44:31

标签: iterator

ListIterator可用于在List上以两种方式遍历。

为什么我们没有类似于ListIterator for Set的东西?是因为它没有订购吗?请指教。

1 个答案:

答案 0 :(得分:1)

简答:

是的,因为它没有订购。

答案很长:

<强>列出

在单个链接的List中,每个元素都引用其后续元素。 在双重链接List中,每个元素都提及其继承者及其前身。 因此,很容易实现next的{​​{1}}方法。为了迭代列表,我们只运行列表元素的下一个引用。双向链表中的遍历迭代将运行pred。引用。在单链表中,列表顺序将被反转并迭代。 所以定义了一个订单。

src

<强> SETS

Iterator由HashFunction管理

src

优点是,集合中的查找函数改进为O(1)。但是我们松开了set元素之间的引用。因此,以两种方式在Set上以两种方式迭代变得更加困难。有一些方法可以迭代这个Set。但要遍历Set,我们需要定义一个订单。但事实并非如此。