博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面试题:利用一个栈倒序另外一个栈中的数
阅读量:6239 次
发布时间:2019-06-22

本文共 459 字,大约阅读时间需要 1 分钟。

题目:有两个相同的栈A和B,在栈A中存放着从大到小的数:1,2,3,4,5,栈顶为最小数1,另外一个栈B为空的。现在要求不使用其他的数据结构,将栈A中的数字顺序倒过来,使其栈顶的数为最大值5。

解题思路:

  1. 这道题目有一个非常直观的思路。首先栈A中存放着1,2,3,4,5这样5个数字,栈顶元素为1,我们需要将其倒序为5,4,3,2,1。
  2. 我们首先需要将栈顶的最小值1取出来存放在临时变量temp中,然后将剩下的四个数字2,3,4,5转移到栈B中去,再将刚才存放在临时变量中的1插入到栈A中,最后将栈B中的数字转移回到栈A,此时栈A中有一个书是排序好的,就是栈底的1。
  3. 重复上面的思路,这回我们取出栈顶的最小值2存放在临时变量中,将其余剩下的3,4,5转移到栈B中,然后再将2插入栈A中。

代码实例

View Code

 

 本文转自xwdreamer博客园博客,原文链接:http://www.cnblogs.com/xwdreamer/archive/2012/05/03/2481478.html如需转载请自行联系原作者

你可能感兴趣的文章
Python练习2
查看>>
新安装的python2.7无法加载error while loading shared libraries: libpython2.7.so.1.0
查看>>
js反混淆解密
查看>>
Exchange Server 2010 DAG搭建及灾难恢复部署方案(准备环境)
查看>>
Android使用本地页面调用android代码
查看>>
MyBatise配置使用
查看>>
nodeJS
查看>>
编写易于理解代码的六种方式
查看>>
linux http虚拟主机的实现(3种方法)
查看>>
记ie8 挂起问题
查看>>
heartbeat高可用集群搭建
查看>>
HashMap实现原理
查看>>
第四章广域网基本原理
查看>>
Boost库学习(2)thread 1
查看>>
我的友情链接
查看>>
年前年后的苦闷
查看>>
用Python获取腾迅财经HTTP信息股票数据的方法
查看>>
两分钟彻底让你明白Android Activity生命周期(图文)!
查看>>
Oracle数据库的体系结构
查看>>
ios 快捷键使用
查看>>