早教吧 育儿知识 作业答案 考试题库 百科 知识分享

大学数据结构有关栈的问题最近刚接触数据结构栈的知识,教材上有这样一道题:若按从左到右的顺序依次读入已知序列(a,b,c,d,e,f,g)中的元素,然后结合堆栈操作,能得到下列序列中的哪些序

题目详情
大学数据结构有关栈的问题
最近刚接触数据结构栈的知识,教材上有这样一道题:若按从左到右的顺序依次读入已知序列(a,b,c,d,e,f,g)中的元素,然后结合堆栈操作,能得到下列序列中的哪些序列(每个元素进栈一次,下列序列表示出栈次序)1.(d,e,c,f,b,g,a) 2.(f,e,g,d,a,c,b) 3.(e,f,d,g,b,c,a) 4(c,d,b,e,f,a,g)
如果下次题目给出N个元素呢,难道也一个答案一个答案去测试吗?那不是很浪费时间也增大计算量!有没有什么规律的,能通过规律排查答案.如果有高手知道请指教!
▼优质解答
答案和解析
这种问题有时候还只能是靠一步一步试试了...不过就我个人看来,要找规律的话,也只能看第一个出栈的元素是什么了.例如,第一个出栈的元素是f,那表示前面a,b,c,d,e都已经进栈了...所以不管后面的元素如何进栈,反正其中a,...
看了大学数据结构有关栈的问题最近刚...的网友还看了以下: