编程之美3.7,队列中的最大值操作问题
2012-05-24 21:57
225 查看
解法三中,采用两个栈的方式建立一个队列,其中stack支持的方法有:
1,pop()
2,push()
3,max()
其中在push()和pop()过程中需要动态修改最大值,其中采用link2NextMaxItem[]数组保存当前元素的上一级最大元素,这里需要理解其中的原理,为什么这样可以?
其中必须理解stack的特性,先进后出的性质,这样书上的操作是正确的,每次进来的数值,只和已经进栈的最大值比较,并且记录旧的最大值位置,而不用记录后面入栈的数值。
1,pop()
2,push()
3,max()
其中在push()和pop()过程中需要动态修改最大值,其中采用link2NextMaxItem[]数组保存当前元素的上一级最大元素,这里需要理解其中的原理,为什么这样可以?
其中必须理解stack的特性,先进后出的性质,这样书上的操作是正确的,每次进来的数值,只和已经进栈的最大值比较,并且记录旧的最大值位置,而不用记录后面入栈的数值。
相关文章推荐
- 《编程之美》读书笔记18: 3.7 队列中取最大数操作问题
- 队列中取最大值操作问题(编程之美3.7)
- 编程之美3.7——队列中取最大值操作问题
- 编程之美3.7队列中取最大值操作问题Java版
- 编程之美3.7——队列中取最大值操作问题
- 编程之美3.7--队列中取最大值操作问题
- 编程之美:第三章 结构之法 3.7队列中取最大值操作问题
- 编程之美3.7——队列中取最大值操作问题
- 编程之美3.7队列中取最大值操作
- 编程之美3.7 队列中最大值问题
- 编程之美--3.7 队列中取最大值操作问题
- 编程之美——队列中取最大值操作问题
- 编程之美读书笔记3.7队列中取最大值操作的问题 解法2
- [编程之美] PSet3.7 队列中取最大值操作问题
- 编程之美读书笔记_3.7_队列中取最大数操作问题
- 编程之美3.7队列中取最大值操作问题(新解法,空间复杂度比原解法低)
- 编程之美3.7 队列中最大值问题
- 编程之美—队列中取最大值操作问题
- 【编程之美】3.7 队列取最大值操作问题 ☆
- 读书笔记之编程之美 - 3.7 队列中取最大值操作问题