class NestedIterator {
public:
NestedIterator(vector<NestedInteger> &nestedList) {
ipos = 0;
Serilize(nestedList);
}
int next() {
return nums[ipos++];
}
bool hasNext() {
if(ipos < nums.size())
return true;
else return false;
}
private:
void Serilize(vector<NestedInteger> IntegerList)
{
for(int i = 0;i<IntegerList.size();i++)
{
if(IntegerList[i].isInteger())
{
int temp = IntegerList[i].getInteger();
nums.push_back(temp);
}
else
{
Serilize(IntegerList[i].getList());
}
}
}
int ipos;
vector<int> nums;
};