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

购买域名网/郑州seo外包

购买域名网,郑州seo外包,设计 中国官网,软件开发服务介绍假设以顺序存储结构实现一个双向栈,即在一维数组的存储空间中存在着两个栈,它们的栈底分别设在数组的两个端点。试编写实现这个双向栈tws的三个操作:初始化inistack(tws)、入栈push(tws,i,x)和出栈pop(tws,i)的算法,其中i为0或1&a…

 

   假设以顺序存储结构实现一个双向栈,即在一维数组的存储空间中存在着两个栈,它们的栈底分别设在数组的两个端点。试编写实现这个双向栈tws的三个操作:初始化inistack(tws)、入栈push(tws,i,x)和出栈pop(tws,i)的算法,其中i为0或1,用以分别指示设在数组两端的两个栈.

 

 C  code:

 #include<stdio.h>

#include<stdlib.h>
#define OK 1
#define OVERFLOW -1
#define ERROR 1
typedef 
int Status;

typedef 
struct
{
 
int *base[2];
 
int *top[2];
}BDStack;

Status InitStack(BDStack 
&s,int m)
{
  s.
base[0]=(int*)malloc(m*sizeof(int));
  s.
base[1]=s.base[0]+m;
  s.top[
0]=s.base[0];
  s.top[
1]=s.base[1];
  
return OK;
}

Status push(BDStack 
&s,int i,int x)
{
     
if(s.top[0]>s.top[1]) return OVERFLOW;
     
if(i==0)  *s.top[0]++=x;
     
else if(i==1*s.top[1]--=x;
     
else return ERROR;
     
return OK;
}

Status pop(BDStack 
&s,int i,int x)
{
     
if(i==0)
     {
          
if(s.top[0]==s.base[0]) return OVERFLOW;
          x
=*--s.top[0];
        }
        
else if(i==1)
        {
             
if(s.top[1]==s.base[1]) return OVERFLOW;
             x
=*++s.top[1];
        }
     
else return ERROR;
     
return OK;
}

void PrintfStack(BDStack &s)
{
     
while(s.base[0]<=s.top[0])
     {
          printf(
"%d ",*s.top[0]);
          s.top[
0]--;
        }
        
while(s.top[1]<=s.base[1])
        {
             printf(
"%d ",*s.top[1]);
             s.top[
1]++;
        }
}


int main()
{
     
int m,i;
     BDStack s;
     printf(
"please input the length of the stack: ");
     scanf(
"%d",&m);
     InitStack(s,m);
     
for(i=0; i<(m-2)/2; i++)
     {
          push(s,
0,i);
     }
     
for(i=0; i<(m-2)/2 ; i++)
     {
          push(s,
1,i);
        }
        s.top[
0]--;
     s.top[
1]++;
        PrintfStack(s);
        
return 0;
}

转载于:https://www.cnblogs.com/cpoint/archive/2011/05/05/2038306.html

http://www.jmfq.cn/news/4872853.html

相关文章:

  • 给宝宝做辅食的网站/百度网页版怎么切换
  • 开发网站和电脑软件的区别/百度收录技巧
  • 制作简易网站/品牌设计
  • 南京电商网站开发/个人发布信息的免费平台
  • 建设优秀企业网站/营销策划书案例
  • 用python做web的网站/关键词查找网站
  • 单页网站如何做/刚刚北京传来重大消息
  • 海南人/简述搜索引擎优化
  • jsp网站开发关键技术/申请网站域名要多少钱
  • 网站总体设计方案/厦门网站外包
  • 手机网站怎么布局/网络营销专家
  • 做动态网站用什么软件/百度seo关键词排名查询
  • 小偷程序做的网站能用吗/西安自动seo
  • 南京做网站优化公司/视频号的网站链接
  • 湖北专业网站建设大全/广告营销策划方案模板
  • 自己做网站app/优化网站seo方案
  • 做互联网网站需要什么资质吗/公司企业网站开发
  • 电影网站开发PPT模板/搜索引擎优化的七个步骤
  • 安装wordpress注意什么/关键词优化的五个步骤
  • 做门的网站建设/google谷歌
  • 长沙网站建设去哪好/中国最厉害的营销策划公司
  • 杭州软件开发制作/搜索引擎优化的定义
  • 如何做网站调研/如何利用网络广告进行推广
  • 烟台网站公司/手机如何制作网页
  • 怎么自己做砍价网站/建设网站的十个步骤
  • 我想自己做网站/济南网站优化公司
  • 如何在一个空间做2个网站/百度服务
  • 做网站平台难在哪里/网络服务器有哪些
  • wordpress的标签设置/站长工具seo综合查询官网
  • 介绍自己的家乡遵义网站建设/百度导航下载安装手机导航