Golang | Leetcode Golang题解之第284题窥视迭代器

题目:

题解:

Go 复制代码
type PeekingIterator struct {
    iter     *Iterator
    _hasNext bool
    _next    int
}

func Constructor(iter *Iterator) *PeekingIterator {
    return &PeekingIterator{iter, iter.hasNext(), iter.next()}
}

func (it *PeekingIterator) hasNext() bool {
    return it._hasNext
}

func (it *PeekingIterator) next() int {
    ret := it._next
    it._hasNext = it.iter.hasNext()
    if it._hasNext {
        it._next = it.iter.next()
    }
    return ret
}

func (it *PeekingIterator) peek() int {
    return it._next
}
相关推荐
bing.shao1 分钟前
Golang 开发者视角:解读《“人工智能 + 制造” 专项行动》的技术落地机遇
人工智能·golang·制造
ONE_PUNCH_Ge1 分钟前
Go 语言泛型
开发语言·后端·golang
爱尔兰极光21 分钟前
LeetCode--移除元素
算法·leetcode·职场和发展
苦藤新鸡1 小时前
51.课程表(拓扑排序)-leetcode207
数据结构·算法·leetcode·bfs
VT.馒头1 小时前
【力扣】2694. 事件发射器
前端·javascript·算法·leetcode·职场和发展·typescript
好学且牛逼的马1 小时前
【Hot100|21-LeetCode 160. 相交链表】
算法·leetcode
Remember_9931 小时前
Spring 事务深度解析:实现方式、隔离级别与传播机制全攻略
java·开发语言·数据库·后端·spring·leetcode·oracle
练习时长一年2 小时前
LeetCode热题100(颜色分类)
算法·leetcode·职场和发展
We་ct3 小时前
LeetCode 73. 矩阵置零:原地算法实现与优化解析
前端·算法·leetcode·矩阵·typescript