队列
来源:互联网 发布:淘宝怎么提高浏览量 编辑:程序博客网 时间:2024/06/04 20:14
#include <iostream>#include <stdlib.h>using namespace std;class LinkQueue;class ListNode{friend class LinkQueue;private:int data;ListNode *link;ListNode(){ link = NULL; }};class LinkQueue{public:ListNode *head,*tail;int qsize;int *elements;LinkQueue() { head = tail = NULL; }~LinkQueue() { Clear(); }void PushTail(int x);bool PopFront();void Clear();int IsEmpty() { return head == NULL; }int DeleteQueue();};void LinkQueue::PushTail(int x){ListNode *p = new ListNode;p ->data = x;if(tail != NULL){p ->link = NULL;tail ->link = p;tail = p;}else{p ->link = NULL;tail = p;head = p;}}bool LinkQueue::PopFront(){ListNode *p;int x;if(head){x = head ->data;p = head;head = head ->link;delete p;qsize--;}else{return false;}}int LinkQueue::DeleteQueue(){ListNode *q = head;head = q->link;int y = q->data;delete q;return y;}void LinkQueue::Clear(){while(PopFront()){}head = tail = NULL;}int main(void){LinkQueue q1,q2;for(int i=0;i<20;i++){int x = rand()%100;cout<<x<<" ";if(x%2 == 1) { q1.PushTail(x); }else { q2.PushTail(x); }}cout<<endl;while(!q1.IsEmpty()&&!q2.IsEmpty()){cout<<q1.DeleteQueue()<<" "<<q2.DeleteQueue()<<endl;}cout<<endl;system("PAUSE");return 0;}
0 0
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 20140825-0831工作总结
- ARC下IBOutlet用weak还是strong
- 栈
- Android杂谈--修改Android系统内/system目录权限使其可读写
- js 获取当前日期的前七天
- 队列
- SQL查询重复记录
- transform
- request.getSession(false),request.getSession()和request.getSession(true)的区别
- maven警告:com.sun.image.codec.jpeg.JPEGCodec 是 Sun 的专用 API,可能会在未来版本中删除
- Linux环境下的Socket编程
- Pig安装及简单实例
- 2014华为上机试题
- 内存管理技巧:如何避免JavaScript的内存泄露