C++ | Leetcode C++题解之第341题扁平化嵌套列表迭代器

题目:

题解:

cpp 复制代码
class NestedIterator {
private:
    vector<int> vals;
    vector<int>::iterator cur;

    void dfs(const vector<NestedInteger> &nestedList) {
        for (auto &nest : nestedList) {
            if (nest.isInteger()) {
                vals.push_back(nest.getInteger());
            } else {
                dfs(nest.getList());
            }
        }
    }

public:
    NestedIterator(vector<NestedInteger> &nestedList) {
        dfs(nestedList);
        cur = vals.begin();
    }

    int next() {
        return *cur++;
    }

    bool hasNext() {
        return cur != vals.end();
    }
};
相关推荐
结衣结衣.6 分钟前
手把手教你实现文档搜索引擎
linux·c++·搜索引擎·开源·c++11
木井巳8 分钟前
【递归算法】解数独
java·算法·leetcode·决策树·深度优先·剪枝
t***54413 分钟前
如何在 Dev-C++ 中切换编译器
java·开发语言·c++
上弦月-编程24 分钟前
企业级RAG系统构建指南
leetcode
大肥羊学校懒羊羊29 分钟前
完数与盈数的计算题解
数据结构·c++·算法
澈20730 分钟前
构造函数与析构函数完全指南
开发语言·c++
阿Y加油吧31 分钟前
算法实战笔记:LeetCode 31 下一个排列 & 287 寻找重复数
笔记·算法·leetcode
穿条秋裤到处跑32 分钟前
每日一道leetcode(2026.04.24):距离原点最远的点
算法·leetcode·职场和发展
W230357657335 分钟前
C++ 高并发线程池实战(二):动态缓存线程池 + 调用者运行拒绝策略完整版实现
开发语言·c++·缓存
踩坑记录40 分钟前
121. 买卖股票的最佳时机 easy 贪心算法
leetcode