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

题目:

题解:

cpp 复制代码
template <class T>
class PeekingIterator : public Iterator<T> {
public:
    PeekingIterator(const vector<T>& nums) : Iterator<T>(nums) {
        flag = Iterator<T>::hasNext();
        if (flag) {
            nextElement = Iterator<T>::next();
        }
    }
    
    T peek() {
        return nextElement;
    }

    T next() {
        T ret = nextElement;
        flag = Iterator<T>::hasNext();
        if (flag) {
            nextElement = Iterator<T>::next();
        }
        return ret;
    }
    
    bool hasNext() const {
        return flag;
    }
private:
    T nextElement;
    bool flag;
};
相关推荐
一叶落4383 分钟前
LeetCode 42. 接雨水(C语言详解)——双指针经典解法
c语言·数据结构·c++·算法·leetcode
寂柒6 分钟前
哈希桶——模拟实现哈希表
数据结构·c++·算法
郝学胜-神的一滴7 分钟前
一序平衡,括号归真:单括号匹配算法的优雅美学
java·前端·数据结构·c++·python·算法
CSDN_kada9 分钟前
杭电网安复试编程Day19
开发语言·c++·算法
悲伤小伞14 分钟前
数据结构重点知识整理
c语言·数据结构·c++·算法·leetcode
x_xbx14 分钟前
LeetCode:70. 爬楼梯
算法·leetcode·职场和发展
TracyCoder12319 分钟前
LeetCode Hot100(64/100)——70. 爬楼梯
算法·leetcode·职场和发展
重庆兔巴哥22 分钟前
如何使用Dev-C++的Windows API进行GUI开发?
开发语言·c++·windows
nananaij24 分钟前
【LeetCode-04 数组异或操作 python解法】
python·算法·leetcode
mjhcsp26 分钟前
C++随机调整(Random Adjustment):优化算法的核心随机策略
java·c++·算法