校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 数据结构 >
题目

若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为 p1 , p2 , p3 ,…, pn ,若p1=n,则pi为()

A.i

B.n=i

C.n-i+1

D.不确定

解答

正确答案是 C

当p1=n,即n是最先出栈的,根据栈的原理,n必定是最后入栈的(事实上题目已经表明了),那么输入顺序必定是1,2,3,…,n,则出栈的序列是n,…,3,2,1。

(若不要求顺序出栈,则输出序列不确定)

C 3条回复 评论
心意

额,我选的D

发表于 2018-10-13 10:52:20
0 0
子不语

当出栈的第一个元素(n)刚好是入栈顺序(1,2,3,...,n)的最后一个元素,那么说明它前面的元素(1,2,3,...n-1)已经全部进栈了,那么出栈的顺序就已经定死了,必须是n,n-1,n-2,...3,2,1。所以就可以根据规律第i个元素为n-i+1,如第一个,n-1+1=n,第二个n-2+1=n-1;  

发表于 2018-10-13 10:52:14
0 0
米米大户

数学题:通项下标和:n+1

发表于 2018-10-13 10:48:33
0 0