其他分享
首页 > 其他分享> > [leetcode 10-05] 一、顶端迭代器 -- 每日一题(获取顶端元素,但指针不发生变化)

[leetcode 10-05] 一、顶端迭代器 -- 每日一题(获取顶端元素,但指针不发生变化)

作者:互联网

这里是实现一个类的功能,根据已有的功能,next() hasNext()

# 这个类中有几个定义好的函数,包含 next  以及hasNext
class PeekingIterator:
    def __init__(self, iterator):
        """
        Initialize your data structure here.
        :type iterator: Iterator
        """
        self.iterator = iterator # 可迭代元素
        self._next = iterator.next()
        self._hasNext = iterator.hasNext()
        
    def peek(self):
        return self._next  # 返回下一个元素,但指针不改变
        
    def next(self):
        ret = self._next
        self._hasNext = self.iterator.hasNext()
        self._next = self.iterator.next() if self._hasNext else 0
        return ret  # 如果有则返回next,没有则返回0

    def hasNext(self):
        return self._hasNext  # 这个是定义好的 hasnext

标签:10,hasNext,iterator,05,self,next,._,顶端,def
来源: https://blog.csdn.net/weixin_45492560/article/details/120617430