该算法将整数向量作为输入,并将最大值存储为max,让它在数组中保持其位置为p,然后将max元素存储在[p,n [等等]的范围内。
com.restfb.exception.FacebookOAuthException: Received Facebook error response of type OAuthException: An active access token must be used to query information about the current user. (code 2500, subcode null)
我无法弄清楚最坏的情况,但似乎算法是线性的,因为while()工作得越多,堆栈大小就越小,并使未来的工作变得非常便宜。
答案 0 :(得分:1)
您的程序的最大值是堆栈底部。您将执行push()
操作N次。在最坏的情况下,您将pop()
N-1次。 (因为你不能弹出超过N-1次,否则你将有空堆栈,这是违反计划目的的。)
最好的情况是当向量V的第一个元素处的最大值时。您仍然执行N push()
操作,并且永远不会执行任何pop()
操作。
因此,在一天结束时,无论向量V中的数据是什么,它都将在线性时间执行。