Fork me on GitHub
打赏

笔试常考题型之栈的进出序列

一、介绍

在做一些互联网公司的笔试题中,经常会出现一道有关栈的进出序列判断的问题,下面我就根据一道例题,阐述下我的解题思路。

 

二、例题

题目解析:

先看第一个选项,a进a出,b进b出,c进c出,d进d出,所以最后的出栈系列为 a,b,c,d。

第二个选项,abc进,c先出,d进d出,b出,a出,所以最后的出栈系列为 c,d,b,a。

第三个选项,a进a出,bc进,c出,d进d出,b出,所以最后的出栈系列为 a,c,d,b。

第四个选项,abc进,c出,b出,a出,d进d出,所以b应该在a前面就出去了,正确的出栈系列为 c,b,a,d。

 

三、解题感受

在做有关栈的进出序列问题时,可以先在脑海中构思一个空心长桶,把要存入的字母当做一个小球,然后放入桶中,再等到合适的时机将它取出即可

 

posted @ 2018-03-30 12:02  Zoctopus_Zhang  阅读(813)  评论(0编辑  收藏  举报
// function btn_donateClick() { var DivPopup = document.getElementById('Div_popup'); var DivMasklayer = document.getElementById('div_masklayer'); DivMasklayer.style.display = 'block'; DivPopup.style.display = 'block'; var h = Div_popup.clientHeight; with (Div_popup.style) { marginTop = -h / 2 + 'px'; } } function MasklayerClick() { var masklayer = document.getElementById('div_masklayer'); var divImg = document.getElementById("Div_popup"); masklayer.style.display = "none"; divImg.style.display = "none"; } setTimeout( function () { document.getElementById('div_masklayer').onclick = MasklayerClick; document.getElementById('btn_donate').onclick = btn_donateClick; var a_gzw = document.getElementById("guanzhuwo"); a_gzw.href = "javascript:void(0);"; $("#guanzhuwo").attr("onclick","follow('33513f9f-ba13-e011-ac81-842b2b196315');"); }, 900);