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

南康家具网站建设手机端网站排名

南康家具网站建设,手机端网站排名,网站怎么做 凡科,在重庆_那里可以做诚信网站认证1. 题目 2. 思路分析 1)创建两个栈空间,PushST,PopST; 2)插入数据往PushST插,判断PopST是否为空,如果为空直接往PopST出数据;如PopST不为空,就先把PopST的数据先出栈&a…

1. 题目

 2. 思路分析

1)创建两个栈空间,PushST,PopST;

2)插入数据往PushST插,判断PopST是否为空,如果为空直接往PopST出数据;如PopST不为空,就先把PopST的数据先出栈;

3)PopST全部出队列。

3. 代码实现 

typedef int STDataType;
typedef struct Stack
{STDataType* arr;int top;//栈顶(相当于size)int capacity;//栈的大小
}ST;//初始化
void StackInit(ST* ps)
{ps->arr = NULL;ps->top = ps->capacity = 0;
}
//销毁
void StackDestroy(ST* ps)
{assert(ps);if (ps->arr != NULL){free(ps->arr);ps->arr = NULL;ps->capacity = ps->top = 0;}
}
//入栈
void StackPush(ST* ps, STDataType x)
{assert(ps);//入栈的前提:要有足够大的空间if (ps->top == ps->capacity)//空间不够{int newcapacity = ps->capacity == 0 ? 4 : 2 * ps->capacity;STDataType* temp = realloc(ps->arr, newcapacity * sizeof(STDataType));if (temp == NULL){perror("realloc fail!");exit(1);}else//扩容成功{ps->arr = temp;ps->capacity = newcapacity;}}//空间够了,进行入栈ps->arr[ps->top] = x;ps->top++;
}
//判断栈顶为空
bool StackEmpty(ST* ps)
{assert(ps);return ps->top == 0;
}
//出栈
void StackPop(ST* ps)
{assert(ps);assert(!StackEmpty(ps));ps->top--;
}
//获取栈顶元素
STDataType Stacktop(ST* ps)
{assert(ps);return ps->arr[ps->top-1];
}
//获取栈顶元素有效个数
int StackSize(ST* ps)
{assert(ps);return ps->top;
}
///以上是栈的结构和相关方法///typedef struct {ST pushST;ST popST;
} MyQueue;MyQueue* myQueueCreate() {MyQueue* q=(MyQueue*)malloc(sizeof(MyQueue));StackInit(&q->pushST);StackInit(&q->popST);return q;
}
//入队列
void myQueuePush(MyQueue* obj, int x) {StackPush(&obj->pushST,x);
}int myQueuePop(MyQueue* obj) {//先判断popST是否为空if(StackEmpty(&obj->popST)){while(!StackEmpty(&obj->pushST)){StackPush(&obj->popST,Stacktop(&obj->pushST));StackPop(&obj->pushST);}}int top=Stacktop(&obj->popST);StackPop(&obj->popST);return top;
}int myQueuePeek(MyQueue* obj) {//先判断popST是否为空if(StackEmpty(&obj->popST)){while(!StackEmpty(&obj->pushST)){StackPush(&obj->popST,Stacktop(&obj->pushST));StackPop(&obj->pushST);}}int top=Stacktop(&obj->popST);return top;
}bool myQueueEmpty(MyQueue* obj) {return  StackEmpty(&obj->pushST)&&StackEmpty(&obj->popST);
}void myQueueFree(MyQueue* obj) {StackDestroy(&obj->pushST);StackDestroy(&obj->popST);free(obj);obj=NULL;
}


文章转载自:

http://6gkMs5pz.qggxt.cn
http://veVsiTUy.qggxt.cn
http://HWeDoySM.qggxt.cn
http://XZK5QBQm.qggxt.cn
http://bSsom506.qggxt.cn
http://ouxZQeLF.qggxt.cn
http://weORoaBb.qggxt.cn
http://gxVvrlu7.qggxt.cn
http://c98Ta81N.qggxt.cn
http://DWWr744L.qggxt.cn
http://wzpahfFi.qggxt.cn
http://79rqlt5i.qggxt.cn
http://6RP6XOBi.qggxt.cn
http://EFE1ks8D.qggxt.cn
http://ulacdQqs.qggxt.cn
http://WiFsuf0N.qggxt.cn
http://EnFQI8hy.qggxt.cn
http://bzYWyBWP.qggxt.cn
http://gDtV9ZXX.qggxt.cn
http://GPyC3QhC.qggxt.cn
http://gM5ObtxB.qggxt.cn
http://QBK8lxxQ.qggxt.cn
http://qT2ZdqqX.qggxt.cn
http://NJpyFmXs.qggxt.cn
http://dl0ZFO2j.qggxt.cn
http://Xv6twsoE.qggxt.cn
http://okXTI3N9.qggxt.cn
http://TLW3sYOv.qggxt.cn
http://FtKmhCYe.qggxt.cn
http://nffxjxFQ.qggxt.cn
http://www.dtcms.com/wzjs/763120.html

相关文章:

  • 宁夏自治区住房城乡建设厅网站国内广告公司排名
  • 网站建设如何把更改内容广州品牌网络营销方式
  • 江苏企业网站建设公司学短视频剪辑与制作
  • 盐城网站优化价格vps wordpress ftp
  • 网站找人做的他能登管理员吗wordpress 4评测
  • 移动应用网站开发旅游网站设计开题报告
  • 房地产网站 模板深圳网站高端建设
  • 贡井区建设局网站做自己的网站发表文章后怎么能让钱赚到手是不是点击率高就可以有收入?请高人指教!感激涕零!
  • 网站备案幕布照片pswordpress主题空白
  • 网站站内优化怎么做一个微信小程序大概多少钱
  • 中国亚马逊网站建设网站建设 需求确认书
  • 建筑网站网页设计网站建设面对的问题
  • 南京培训网站建设seo网站优化培训
  • 做网站系统的过程深圳海外网站建设
  • 河北建设网站证件查询网站后台欢迎界面
  • 汕头市企业网站建设教程想自己做网站推广
  • 简述制作网站的步骤和过程产品推广计划怎么写
  • 为何用wdcp建立网站连不上ftpcdr做网站分辨率
  • 银川网站优化品牌建设还需持续力
  • 青岛中小企业网站制作所见即所得的网站开发软件
  • 国外酷站收录网站好看的网站页面
  • 山东网站空间移动商城 网站建设方法方式
  • 用阳寿做交易的网站宝塔管理wordpress
  • 怎样开物流网站WordPress自定义图床
  • 网站建设小组宝应建设局网站
  • 垂直网站导航是谁做的小程序搭建需要多久
  • 高端网站定制策划俄外长抵达北京
  • 做网站需要提供哪些信息iis建设网站教程
  • 厦门做网站设计如何在阿里巴巴建网站
  • 医药网站备案wordpress 鲜果