JAVA数据结构-比较难的栈算法问题
1.实现类似栈的数据结构(数据类型可以只为Integer),包含push(),pop(),findMin()3个方法,其中findMin()是输出当前数据结构中最小元素的值。
注意:所有的方法时间复杂度必须为O(1)!!!即不能使用循环遍历的方法找出最小值!!!
2.使用1个数组实现3个栈。当且仅当数组被全部填满时,才能抛出栈溢出异常。也就是说,数组有空间时,可以支持任意栈的push()操作。
第1个问题我已经解决了,欢迎大家来探讨,看看有没有更好的解法。我是用伴随矩阵做的。
第2个问题实在不会,求大牛解决。有木有?