Stack/385.Mini-Parser/Readme.md
本题涉及了一种不常见的自定义数据结构NestedInteger,需要好好分析。
本题一个可以取巧的地方在于:任何一个NestedInteger变量都可以完全看做是一个vector<NestedInteger>,哪怕这个list里的元素只有1.这样就避免了考虑这个NestedInteger变量可能仅有一个int的麻烦。
另外,注意到NestedInteger类没有给出清零的操作,所以必须尽量不借助多余的变量来实现栈的操作。
具体的算法是:
Stack.push(NestedInteger());
这样,这个变量不用命名、不用赋初值就可以直接放入栈里。
Stack.top().add(Integer(val));
NestedInteger temp=Stack.top();
Stack.pop();
Stack.top().add(temp);
特别注意的是,上述语句的前提条件是 Stack.size()>1