设有初始为空的栈S,对于入桟序列a、b、c,经由一个合法的进桟和出栈操作序列后,题没读懂谁帮讲讲?
设有初始为空的栈S,对于入桟序列a、b、c,经由一个合法的进桟和出栈操作序列后(每个元素进栈、出栈各1次),不能得到的序列为。A.abcB.acdC.cabD.cba...
设有初始为空的栈S,对于入桟序列a、b、c,经由一个合法的进桟和出栈操作序列后(每个元素进栈、出栈各1次),不能得到的序列为。
A. abc
B. acd
C. cab
D. cba 展开
A. abc
B. acd
C. cab
D. cba 展开
1个回答
展开全部
这道题目考察的就是对于栈这种数据结构的理解,要明确栈所具有的特征-后进先出。
入栈序列为a,b,c,那么就分别考察这四个选项
A选项:可以,操作序列为a进,a出,b进,b出,c进,c出,得到的序列即为abc。
B选项:可以,操作序列为a进,a出,b进,c进,c出,b出,得到的序列即为acb。
C选项:不可以,这是因为当c在出栈时,b和a一定已经入栈且a为栈底,那么必须先把b执行出栈后,才能让a出栈。
D选项:可以,a进,b进,c进,c出,b出,a出,得到的序列为cba。
可以用草稿纸自己模拟一下过程,就会很明确了。
入栈序列为a,b,c,那么就分别考察这四个选项
A选项:可以,操作序列为a进,a出,b进,b出,c进,c出,得到的序列即为abc。
B选项:可以,操作序列为a进,a出,b进,c进,c出,b出,得到的序列即为acb。
C选项:不可以,这是因为当c在出栈时,b和a一定已经入栈且a为栈底,那么必须先把b执行出栈后,才能让a出栈。
D选项:可以,a进,b进,c进,c出,b出,a出,得到的序列为cba。
可以用草稿纸自己模拟一下过程,就会很明确了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询