摘要: 题目很简单,与之相似的还有用两个队列实现栈,思路类似都是用一个村一个倒,类似负负得正嘛。具体分析一下两个栈实现队列,设这两个分别为s1和s2,我们从入队开始,最开始只要直接压倒s1中,然后出队,此事要先将元素全部弹到出再放到s2中;现在的问题是当两个栈都有东西的时候要怎么处理,其实分析一下我们发现s2中的元素就是最先进的,所以pop只要弹s2就行,同理压栈只要压到s1里面,代码如下: 1 #include 2 #include 3 #include 4 using namespace std; 5 const std::string PUSH="PUSH"; 6 const 阅读全文
posted @ 2014-04-04 23:38 mrbean 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 关于链表的经典面试题,说实话我第一次看到这个的想法是双向链表,毕竟直接使用链表的话好像这个结构很符合要求了(其实方便的找到前一个元素也是双向链表的设计初衷吧),于是我写出了如下的代码: 1 #include 2 #include 3 using namespace std; 4 5 class Node 6 { 7 public: 8 int value; 9 Node* next;10 Node* front;11 Node()12 {13 value=0;14 next=NULL;15 fro... 阅读全文
posted @ 2014-04-04 10:48 mrbean 阅读(364) 评论(0) 推荐(0) 编辑