如何在一个队列中查找最大值

您所在的位置:网站首页 查找最大值函数怎么求的 如何在一个队列中查找最大值

如何在一个队列中查找最大值

2024-07-11 11:47| 来源: 网络整理| 查看: 265

编程之美上的题目,具体忘记了,有一个队列,定义了push,pop,MaxElement三个函数,其中MaxElement要返回队列中最大的元素,第一次看这个题目就是遍历,每次MaxElement的时候遍历一遍队列,具体代码不写了,三个操作的开销为:

1 push:O( 1 ) 2 pop:O( 1 ) 3 MaxElement:O(Length(que))

于是换成另外一种方法,设置一个MaxVal,每次push与进入队列的元素进行比较,这样代码如下:(为了节省篇幅,利用了STL)

1 int main( void ) 2 { 3 queue que; 4 int MaxVal =- 1 ; 5 int push_data[ 5 ] = { 6 9 , 8 , 10 , 2 , 1 7 }; 8 9 for ( int i = 0 ;i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3