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;
};
相关推荐
文丑颜不良啊20 分钟前
LeetCode1261~1280题目解析
java·leetcode
qq_4663024523 分钟前
如何通过部分文件名,读取出整个文件名
c++·qt
octopus_c27 分钟前
C++ 入门
开发语言·c++·算法
Shaoshing1 小时前
LeetCode100 11. 盛最多水的容器
算法·leetcode
raindayinrain1 小时前
c++新特性--实用新特性
c++
Soneswy1 小时前
C++基础篇——类与对象(中)
开发语言·c++
海绵宝宝转agent2 小时前
Leetcode二叉树算法个人理解
笔记·学习·算法·leetcode·深度优先
Rain的Java大神之路2 小时前
面试被LeetCode 27(移除元素)问懵?别再用两层 for 循环了:一道“简单题”吃透双指针原地删除,附面试加分话术 + 11 个避坑清单
后端·leetcode·面试
kiracrimson3 小时前
STL:List的使用和模拟实现
开发语言·c++·list
二十七日秋3 小时前
算法刷题笔记「Day 1|四道 OJ 入门题里的深坑」
c语言·汇编·数据结构·c++·笔记·python·算法