第四章栈(3)

3.现实生活中栈的一个例子是佩兹糖果盒。想象一下你有一盒佩兹糖果,里面塞满了红色、黄色和白色的糖果,
但是你不喜欢黄色的糖果。使用栈(有可能用到多个栈)写一段程序,在不改变盒内其他糖果叠放顺序的基础上,

将黄色糖果移出。

let candyBox=new Stack(); candyBox.push('red'); candyBox.push('yellow'); candyBox.push('red'); candyBox.push('yellow'); candyBox.push('white'); candyBox.push('yellow'); candyBox.push('white'); candyBox.push('yellow'); candyBox.push('white'); candyBox.push('red'); function getCandy(ele,stack) { let getCandyStack=new Stack(); let tmpCandyStack=new Stack(); while(!stack.isEmpty()) { if(stack.peek()==ele.trim()) { getCandyStack.push(ele); stack.pop(); }else { tmpCandyStack.push(stack.pop()); } } while(!tmpCandyStack.isEmpty()) { stack.push(tmpCandyStack.pop()); } } getCandy('yellow',candyBox); console.log("移出后:"); while(!candyBox.isEmpty()) { console.log(candyBox.pop()); }

全部评论

相关推荐

牛客583549203号:腾讯还好,况且实习而已,实习生流动性很大,属于正常现象,记得和HR委婉解释
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务