两栈共享
两栈共享空间:使用一个数组来存储两个栈,让一个栈的栈底为该数组的始端,另一个栈的栈底为该数组的末端,两个栈从各自的端点向中间延伸。
const int Stack_Size=100; template <class T> class BothStack { public: BothStack( ); ~BothStack( ); void Push(int i, T x); T Pop(int i); T GetTop(int i); bool Empty(int i); private: T data[Stack_Size]; int top1, top2; };