![]() |
1
4
我会把它当成发电机
|
![]() |
2
2
你把事情复杂化了一点。您所需要做的就是获取下一个元素并两次生成它。您确实需要将输入视为迭代器,而不是序列。只有像列表这样的序列才有长度并且可以被索引,迭代器所能做的就是给你下一个值,直到它耗尽为止。
对于基于类的迭代器,这意味着您需要存储要重复的元素,以便每次调用
我用了一个独特的哨兵来确保
然而,它是 容易得多 只需在此处编写一个生成器函数,并两次生成每个元素:
您可以通过循环进一步推广,但如果您只需要将元素加倍,我只会坚持使用更简单的加倍
|
|
Julia · 矢量中相加为总和S的值的数量 2 年前 |
![]() |
apetrai · 我应该如何假设算法使用哪种迭代器类别? 3 年前 |
![]() |
Pratik · 不使用Java DeepCopy迭代器 7 年前 |
![]() |
PanDe · 将两个列表合并为一个Dict、Tuple 7 年前 |
![]() |
bisarch · 迭代哈希集并在每次迭代中删除多个元素 7 年前 |