diff --git "a/leetcode3/\354\265\234\353\257\274\354\247\200/284.py" "b/leetcode3/\354\265\234\353\257\274\354\247\200/284.py" new file mode 100644 index 00000000..6c0fcb44 --- /dev/null +++ "b/leetcode3/\354\265\234\353\257\274\354\247\200/284.py" @@ -0,0 +1,20 @@ +class PeekingIterator: + def __init__(self, iterator): + self.iterator = iterator + self.peek_value = iterator.next() if iterator.hasNext() else None + + def peek(self): + return self.peek_value + + def next(self): + current = self.peek_value + + if self.iterator.hasNext(): + self.peek_value = self.iterator.next() + else: + self.peek_value = None + + return current + + def hasNext(self): + return self.peek_value is not None \ No newline at end of file