一个数组实现两个栈,既然是一个数组变成两个栈,首先得把你的数组分成两部分,
这是一个十个元素的数组,有几种方法把他分成两部分呢?
这么分!
还是这么分!
或者这么分!
言归正传,其实分成两部分还是有两种分发的,第一种就是我上边画的第三种从中间开始分,将你的数组分成两个,分别成为一个栈。但是还有一种分发,是比较不容易想到的,那就是将你的数据的数据进行奇偶分开。
下标是红色的是一个栈,绿色的是另外一个栈。
上边的将数组从中间分开,也是有两种情况的
从中间分开,初始情况下top1和top2都是在中间值,然后从中间开始向两侧增长,