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

挂甲寺网站建设营销系统四大系统

挂甲寺网站建设,营销系统四大系统,东莞市研发网站建设公司,临沂网站优化公司前言#xff1a;本节博客分享了用栈实现队列效果的思路以及代码#xff0c;有需要借鉴即可。 1.题目及链接 LINK 2.思路分析 如果要用栈实现队列#xff0c;我们直到栈是先入后出的一个效果#xff0c;所以我们可以用两个栈#xff0c;这样逆转两次数不就是入栈之前数组… 前言本节博客分享了用栈实现队列效果的思路以及代码有需要借鉴即可。 1.题目及链接 LINK 2.思路分析 如果要用栈实现队列我们直到栈是先入后出的一个效果所以我们可以用两个栈这样逆转两次数不就是入栈之前数组的顺序嘛。下面是一些图辅助理解 3.代码示例 #includestdio.h #includeassert.h #includestdlib.h #includestdbool.h//用数组的方式实现栈结构 typedef int STDateType; typedef struct Stack {STDateType* arr;int top;int capacity; }ST;//初始化与销毁 void StackInit(ST* ps); void StackDestroy(ST* ps);//入栈出栈 void StackPush(ST* ps,STDateType x); STDateType StackTop(ST* ps); void StackPop(ST* ps);//统计与判断 bool StackEmpty(ST* ps); int StackSize(ST* ps);void StackInit(ST* ps) {assert(ps);ps-arr NULL;ps-capacity ps-top 0; }void StackDestroy(ST* ps) {assert(ps);free(ps-arr);ps-arr NULL;ps-capacity ps-top 0;ps NULL; }void StackPush(ST* ps, STDateType x) {assert(ps);if (ps-capacity ps-top){//初始值的情况int newcapacity ps-capacity 0 ? 4 : 2 * ps-capacity;STDateType* temp (STDateType*)realloc(ps-arr, newcapacity * sizeof(STDateType));if (temp NULL){perror(malloc fail!);exit(-1);}ps-arr temp;ps-capacity newcapacity;}ps-arr[ps-top] x; }void StackPop(ST* ps) {assert(ps);assert(ps-top 0);ps-top--; }STDateType StackTop(ST* ps) {assert(ps);return ps-arr[ps-top - 1]; }bool StackEmpty(ST* ps) {assert(ps);return ps-top 0; }int StackSize(ST* ps) {assert(ps);return ps-top; }typedef struct {ST pushtack;ST poptack; } MyQueue;MyQueue* myQueueCreate() {//首先要创建一个队列结构体MyQueue* obj (MyQueue*)malloc(sizeof(MyQueue));//对队列结构体中的栈做初始化调整StackInit(obj-pushtack);StackInit(obj-poptack);//返回return obj; }//将元素 x 推到队列的末尾 void myQueuePush(MyQueue* obj, int x) {//插入数据StackPush(obj-pushtack,x); }//返回队列开头的元素 int myQueuePeek(MyQueue* obj) {//分两种情况:1.poptack为空2.poptack不为空if(StackEmpty(obj-poptack))//为空需要导数据{while(!StackEmpty(obj-pushtack)){int top StackTop(obj-pushtack);//取出push数据StackPop(obj-pushtack);//删除pop数据StackPush(obj-poptack,top);//放入push}}//poptack不为空return StackTop(obj-poptack); }//从队列的开头移除并返回元素 int myQueuePop(MyQueue* obj) {int front myQueuePeek(obj);//取出StackPop(obj-poptack);//删除return front;//返回 }//如果队列为空返回 true 否则返回 false bool myQueueEmpty(MyQueue* obj) {//两个都为空return StackEmpty(obj-pushtack)StackEmpty(obj-poptack); }//释放 void myQueueFree(MyQueue* obj) {StackDestroy(obj-pushtack);StackDestroy(obj-poptack);free(obj); }/*** Your MyQueue struct will be instantiated and called as such:* MyQueue* obj myQueueCreate();* myQueuePush(obj, x);* int param_2 myQueuePop(obj);* int param_3 myQueuePeek(obj);* bool param_4 myQueueEmpty(obj);* myQueueFree(obj); */完。
http://www.zqtcl.cn/news/338358/

相关文章:

  • 常州住房和城乡建设部网站网站开发哪家公司口碑好
  • 网站备案 登录名巴中交通建设有限公司网站
  • 门户资源分享网站模板软件网站开发市场前景
  • 海南省住房和城乡建设厅官方网站列举五种常用的网站推广方法
  • aso优化服务平台东莞优化seo
  • 高唐做创建网站的公司网站开发费怎么做账
  • 域名有没有被注册哪个网站最好中企动力网站建设方案
  • 无锡网站制作计划我的世界寻找建筑网站
  • 烟台建设集团招聘信息网站青岛百度公司总部
  • php网站模板怎么用怎么做链接网站
  • 完整网站开发视频教程安丘营销型网站建设
  • 女与男爱做电影网站免费网站外包公司
  • 传统文化传播公司网站建设wordpress 插件开启
  • 哪些网站是做外贸生意的网站建设所需美工
  • 网站建设哪个公司比较好惠州网络问政平台
  • 河南网站备案系统短信广州注册公司程序
  • 苏晋建设集团网站跨专业的简历怎么制作
  • 交互网站怎么做设计师作品网站
  • 国外网站的分析工具有哪些办公室装修计入什么会计科目
  • 手机网站 需求模板3000元建设个人网站
  • 请人做网站域名和主机thinkphp网站开发实战教程
  • 做地产网站哪家好饮料网站建设价格
  • 外管局网站 报告怎么做wordpress 阿里
  • 湘潭做网站 去磐石网络山西自助建站费用低
  • 温州哪里做网站比较好昆明网页制作开发
  • 网站建设淘宝客网站建设与网页设计入门
  • 网站推广营销联系方式俄语免费网站制作
  • 广东企业网站seo点击软件搭建本地网站
  • 商丘做网站的价格专业网站制作哪家强
  • 瑞安微信网站软件公司网站设计与制作