您的位置:首页 > 其它

设计包含min函数的栈

2014-03-18 15:06 190 查看
题目:定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。

思路:

当要求O(1)的时候,首先要考虑用"空间换时间"的优化方法

栈的特点是每次只操作顶端元素,

最小值只用一个变量来保存,当栈将最小值POP时,就无法得到剩下栈元素中的最小值,

所以考虑用一系列变量来保存最小值,即最小值栈,与栈数据同进退

考虑栈结构可能保存的是扩展数据结构,可以保存最小值的位置

参考:

http://zhedahht.blog.163.com/blog/static/25411174200712895228171/

/article/3642055.html // by zjerry 看过一遍没记住...

http://blog.csdn.net/zhu_liangwei/article/details/9954643 // 参考别人的代码理解上一个页面的
O(1)空间算法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: