当前位置: 首页 > news >正文

郑州有做彩票网站的吗seo翻译

郑州有做彩票网站的吗,seo翻译,建设网站需要哪些东西,棋牌软件挂脚本定制开发1#xff1a;如何只使用stack实现queue呢#xff1f;我们知道stack是先进后出的#xff08;FIFO#xff09;#xff0c;而queue是先进先出的#xff08;FIFO#xff09;。也就是说#xff0c;stack进行了一次反向。如果进行两次反向#xff0c;就能实现queue的功能如何只使用stack实现queue呢我们知道stack是先进后出的FIFO而queue是先进先出的FIFO。也就是说stack进行了一次反向。如果进行两次反向就能实现queue的功能所以我们需要两个stack实现queue。     下面是具体思路。 假设有两个栈A和B且都为空。可以认为栈A为提供入队列的功能栈B提供出队列的功能。 1如果栈B不为空直接弹出栈B的数据。 2如果栈B为空则依次弹出栈A的数据放入到栈B中再弹出栈B的数据。 代码如下 #include stdafx.h #includemalloc.h #include iostream #include assert.h using namespace std;/*单链表的节点data表示节点的数据域next指向下一个节点*/ class MyData { public:MyData() :data(0), next(NULL) {};//默认构造函数这样表示后主体中不用再写这个函数了MyData(int value) :data(value), next(NULL) {};//带参数的构造函数int data;//数据域MyData *next;//下一个节点 };/*表示栈的定义其中public成员top表示栈顶由于不能直接操作栈底因此这里没有定义栈底的指针。 在默认构造函数中把栈顶指针top置空表示此时栈为空栈。*/ class MyStack { public:MyStack() :top(NULL) {};//默认构造函数void push(MyData data);//进栈void pop(MyData *pData);//出栈bool IsEmpty();//是否为空栈MyData *top;//栈顶 };class MyQueue { public:void enqueue(MyData data);//入队void dequeue(MyData data);//出队bool IsEmpty();//是否为空队 private:MyStack s1;//用于入队MyStack s2;//用于出队 };//进栈 void MyStack::push(MyData data) {MyData *pData NULL;pData new MyData(data.data);//生成新节点pData-next top;top pData; }//判断栈是否为空 bool MyStack::IsEmpty() {return(top NULL);//如果top为空则返回1否则返回0 }//出栈 void MyStack::pop(MyData *data)//将删除的节点保存到data中 {if (IsEmpty())//如果栈为空直接返回{return;}data-data top-data;//给传出的参数赋值MyData *p top;//临时保存原栈顶节点top top-next;//移动栈顶指向下一个节点delete p;//释放原栈顶节点内存 }//入队 void MyQueue::enqueue(MyData data) {s1.push(data);//只对s1进行操作 }//出队 void MyQueue::dequeue(MyData data) {MyData temp(0);//局部变量用于临时存储if (s2.IsEmpty()){while (!s1.IsEmpty())//如果s2为空把s1的所有元素push到s2中{s1.pop(temp);//弹出s1的元素s2.push(temp);//压入s2中}}if (!s2.IsEmpty()){s2.pop(data);//此时s2不为空则弹出s2的栈顶元素} }//队列判空 bool MyQueue::IsEmpty() {//如果两个栈都为空则返回1否则返回0return(s1.IsEmpty() s2.IsEmpty()); } int main() {MyData data(0);//定义一个节点MyQueue q;q.enqueue(MyData(1));q.enqueue(MyData(2));q.enqueue(MyData(3));q.dequeue(data);cout dequeue data.data endl;q.dequeue(data);cout dequeue data.data endl;q.dequeue(data);cout dequeue data.data endl;cout IsEmpty: q.IsEmpty() endl;return 0; } View Code 运行结果 转载于:https://www.cnblogs.com/lovemi93/p/7607203.html
http://www.sadfv.cn/news/386173/

相关文章:

  • 建设公司网站费用怎么做账网站支付功能建设
  • 福州网站建设方案优化四川做网站公司哪家好
  • 一个网站seo做哪些工作最像app的wordpress主题
  • 免费网站模板宠物用品店源码下载网站cms
  • 网站院长信箱怎么做网站域名怎么做变更
  • 卖普洱茶做网站网站开发建设及推广合同
  • 做的好点的外贸网站有哪些枣庄网站制作费用
  • 网站的建设与预算ftp 上传 wordpress
  • 网站搭建的流程是什么推广关键词
  • 济南网站建设服务哪家好上海最有名的设计公司有哪些
  • 网站要怎么做的吗网站本科
  • 简单详细搭建网站教程视频教程成都网站建设前50强
  • 锦州网站制作公司应该如何做营销型网站
  • 网站创意文案怎么做wordpress调用分类目录代码
  • 手机销售网站的建设西安seo网站公司
  • 外链 网站权重公司展厅装修效果图
  • 网站参数修改互联网推广开户
  • 深圳市住建局造价站镇江关键字优化公司
  • 深圳华企网站建设公司建设网站的步骤
  • 十堰优化网站排名公司响应式网站 价格
  • 手机网站建设流程 知乎网站开发外包项目网站
  • 网站程序的构成网站的运营维护
  • 网站可以放多少视频瀑布流网站源码
  • 浙江省建设监理协会管网站爱企查企业服务平台
  • 做网站创业需要注册公司吗cocos2d-js可以做网站吗
  • 如何选择坪山网站建设网站源码下载教程
  • 龙岩网站建设公司网站用户体验
  • 兰州专业做网站的公司哪家好建立企业网站公司
  • 静态网页模板 网站模板承德网站建设方案
  • 大连p2p网站建设企业网站的技术维护内容主要包括