原题链接:https://leetcode.com/problems/flatten-nested-list-iterator
class NestedIterator {
public:
vector<int> res;
int index = 0;
NestedIterator(vector<NestedInteger> &nestedList) {
dfs(nestedList);
}
void dfs(vector<NestedInteger> &nestedList) {
for (auto l : nestedList) {
if (l.isInteger()) {
res.push_back(l.getInteger());
} else {
dfs(l.getList());
}
}
}
int next() {
return res[index ++];
}
bool hasNext() {
return index < res.size();
}
};