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

聚美优品网的网站建设情况自己做网站去哪买服务器

聚美优品网的网站建设情况,自己做网站去哪买服务器,外贸怎么做起来,济南平面设计公司定义: 栈(stack)是一种遵循先入后出逻辑的线性数据结构。 把栈顶部称为“栈顶”,底部称为“栈底”。将把元素添加到栈顶的操作叫作“入栈”,删除栈顶元素的操作叫作“出栈”。 分析: 栈的常用操作有&#x…

定义:

栈(stack)是一种遵循先入后出逻辑的线性数据结构。

    把栈顶部称为“栈顶”,底部称为“栈底”。将把元素添加到栈顶的操作叫作“入栈”,删除栈顶元素的操作叫作“出栈”。

分析:

栈的常用操作有:

        1. 入栈;

        2. 出栈;

        3. 获取栈顶元素;

        4. 获取栈大小;

        5. 删除栈。

下面,采用链表结构实现栈:

代码:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>//链表
typedef struct ListNode 
{int data;ListNode *next;
};//基于链表实现的栈
typedef struct StackNode
{ListNode *top;int size;
}LinkListStack;//栈初始化(构造函数)
LinkListStack *creatLinkListStack()
{LinkListStack *s = (LinkListStack *) malloc(sizeof(LinkListStack));s->top = NULL;s->size = 0;return s;
}//析构函数,删除栈
void delLinkedListStack(LinkListStack *s)
{while(s->top){ListNode *n = s->top->next;free(s->top);s->top = n;}free(s);printf("栈已删除\n");
}//获取栈的长度
int getSize(LinkListStack *s)
{return s->size;
}//判断栈是否为空
bool isEmpty(LinkListStack *s)
{return getSize(s)==0;
}//入栈
void push(LinkListStack *s,int num)
{ListNode *node = (ListNode *)malloc(sizeof(ListNode));node->next = s->top;node->data = num;s->top = node;s->size++;
}//访问栈顶元素
int gettop(LinkListStack *s)
{if(s->size == 0){printf("栈为空\n");return INT_MAX;}return s->top->data;
}//出栈
int pop(LinkListStack *s)
{int e = gettop(s);ListNode *temp = s->top;s->top=s->top->next;free(temp);temp=NULL;s->size--;return e;
}//打印栈
void Print_Stack(LinkListStack *s)
{if(s==NULL){printf("栈已删除\n");return ;}else{ListNode *p = s->top;printf("\n栈中元素为:\n");while(p){printf("\t%d\n",p->data);p=p->next;}printf("****************\n");}
}int main(){LinkListStack *Stack = creatLinkListStack();int num;char op[10];while(scanf("%s",op)!=EOF){//入栈测试if(strcmp(op,"push")==0){scanf("%d",&num);push(Stack,num);}//出栈测试else if(strcmp(op,"pop")==0){num=pop(Stack);}//打印栈else if(strcmp(op,"show")==0){Print_Stack(Stack);}//删除栈else if(strcmp(op,"delete")==0){delLinkedListStack(Stack);}//获取栈顶元素else if(strcmp(op,"top")==0){num = gettop(Stack);printf("%d\n",num);printf("****************\n");}}return 0;
}

测试:

输入:

push 1

push 4

push 3

push 5

show

pop

show

pop

show

top

delete

输出:

栈中元素为:
        5
        3
        4
        1
****************

栈中元素为:
        3
        4
        1
****************

栈中元素为:
        4
        1
****************
4
****************

栈已删除
http://www.dtcms.com/wzjs/789067.html

相关文章:

  • 用eclipse做网站网站怎么做抽奖
  • 建设工程招投标网站邯郸网站设计价格
  • 什么建站平台好族蚂建站怎么样
  • 邯郸市永年区做网站的公司wordpress积分系统
  • 在服务器做网站蔡甸seo排名公司
  • 手机开发网站工具成都天府新区网站建设
  • 怀化住建部网站网站建设客户说没用
  • 云南公路建设市场网站网站不备案备案
  • 厦门网站制作报价企业 北京 响应式网站
  • 建站工具箱 discuz网页建立
  • 网站建设需求量大google网站地图格式
  • 云南培训网站建设wordpress add_user_meta
  • 电子商务的网站有哪些企业工商信息公示系统
  • 哈密建设集团有限责任公司网站微信商城平台开发
  • 网站建设实验目的做网站好用的软件
  • 学校网站建设培训心得账户竞价托管哪里好
  • 怎样查找网站域名归属wordpress安装显示空白页
  • 佛山新网站制作机构sempre音乐术语
  • 西安网页设计培训班费用搜索引擎营销优化诊断训练
  • 做的网站没给我备案眉山市做网站的公司
  • 品牌网站建设岗位职责营销型网站建设要
  • 网站下载软件入口企业网站推广属于付费
  • 网站素材网wordpress主题大前端dux5.0
  • 陕西网站建设通报东莞市建设局质量监督网站
  • 金华企业网站建站模板菜鸟怎样做自己的网站
  • 响应式网站 有哪些弊端手机上怎么制作网站吗
  • 扬州工程建设信息网站西安搜索引擎优化
  • 河源正规网站建设价格多少钱可以注册公司
  • 网站建设一般需要多久网站如何做3d产品展示
  • 上海崇明林业建设有限公司 网站网页模板之家