用一个数组实现两个栈,通常我们会想到以下几种方案:
1.奇偶栈,即就是将数组的偶数位置看作一个栈的存储空间,将奇数位置看作另一个栈的存储空间。
2.从中间分别向两边展开,即就是将数组的中间位置看作是两个栈的栈底,压栈时栈顶指针分别向两边移动,当任何一边到达数组的起始位置或是数组尾部就开始扩容。
3.从两边向中间压栈,就是将数组的起始位置看作是一个栈的栈底,将数组的尾部看作是另一个栈的栈底&
用一个数组实现两个栈,通常我们会想到以下几种方案:
1.奇偶栈,即就是将数组的偶数位置看作一个栈的存储空间,将奇数位置看作另一个栈的存储空间。
2.从中间分别向两边展开,即就是将数组的中间位置看作是两个栈的栈底,压栈时栈顶指针分别向两边移动,当任何一边到达数组的起始位置或是数组尾部就开始扩容。
3.从两边向中间压栈,就是将数组的起始位置看作是一个栈的栈底,将数组的尾部看作是另一个栈的栈底&