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

医院网站建设预算做网络销售哪些网站比较好

医院网站建设预算,做网络销售哪些网站比较好,全景制作软件app,美工培训一对一数据结构——栈 一、栈的结构和概念二、 栈的两种构建方式①、用数组进行构建②、用链表进行构建 三、栈的创建四、栈的初始化五、栈的销毁六、压栈七、出栈八、判空九、获取栈顶元素十、获取栈的size 一、栈的结构和概念 栈#xff1a;栈是一种特殊的线性表#xff0c;其只… 数据结构——栈 一、栈的结构和概念二、 栈的两种构建方式①、用数组进行构建②、用链表进行构建 三、栈的创建四、栈的初始化五、栈的销毁六、压栈七、出栈八、判空九、获取栈顶元素十、获取栈的size 一、栈的结构和概念 栈栈是一种特殊的线性表其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶另一端称为栈底。栈中的数据元素遵守后进先出LIFOLast In First Out的原则。 二、 栈的两种构建方式 ①、用数组进行构建 ②、用链表进行构建 本篇我们采用数组构建的方式为大家进行讲解。本篇博客主要从栈的初始化、栈的销毁、压栈出栈等七个方面为大家全面进行栈的讲解。 //初始化 void InitST(ST* pst); //销毁 void DestoryST(ST* pst); //压栈 void PushST(ST* pst, STDatatype x); //出栈 void PopST(ST* pst); //判空 bool STEmpty(ST* pst); //获取栈顶元素 STDatatype TopST(ST* pst); //获取栈的size int STSize(ST* pst); 三、栈的创建 typedef struct STack {STDatatype* a;//数组int capacity;//容量int top;//栈顶元素的下一个 }ST;我们采用结构体的方式创建一个结构体成员变量其中定义了数组指针a,capacity容量和top。其中a指向的是栈的开始位置capacity指向的是栈的结束位置至于top,则既可以指向栈顶位置也可以指向栈顶元素的下一个位置这取决于你对其如何进行初始化。 四、栈的初始化 栈的初始化中最为重要的一步便是如何对pst-top进行相应的初始化如果我们将pst-top初始化为0则top将指向栈顶元素的下一个位置。但是如果我们将其初始化为-1则top将指向栈顶元素。但是如果将其初始化为-1也会带来一些不必要的麻烦例如一些不懂的栈结构的人可能会以为这里初始化错误。所以我们在这里将其初始化为0. void InitST(ST* pst) {assert(pst);pst-a NULL;pst-capacity 0;//栈顶元素的下一个位置pst-top 0; }五、栈的销毁 利用free函数将开辟的内存空间进行释放并将其置为NULL,并把capacity和top置为0。 void DestoryST(ST* pst) {assert(pst);free(pst-a);pst-a NULL;pst-capacity pst-top 0; }六、压栈 由于栈的后进先出特性我们便只能对栈顶元素进行出栈操作不能随意的对其他元素进行出栈操作。出栈函数非常简单首先是扩容部分如果数组内存不够便对其进行扩容操作。然后在栈顶处插入数据即可。 void PushST(ST* pst, STDatatype x) {if (pst-top pst-capacity){int newcapacity pst-capacity 0 ? 4 : pst-capacity * 2;STDatatype *tmp (STDatatype*)realloc(pst-a, sizeof(STDatatype) * newcapacity);if (tmp NULL){perror(realloc fail);return;}pst-a tmp;pst-capacity newcapacity;}//插入数据pst-a[pst-top] x;pst-top;七、出栈 出栈操作我们直接对pst-top进行–操作即可。但是这里需要注意的是当数组元素全部删除完毕之后便不能对其进行删除操作了所以这里需要对其进行判空。 oid PopST(ST* pst) {assert(pst);assert(!STEmpty(pst));pst-top--; }八、判空 直接判断pst-top是否等于0如果pst-top等于0则返回true,否则返回false。 bool STEmpty(ST* pst) {assert(pst);return pst-top 0; }九、获取栈顶元素 这里需要注意的是由于我们定义的是pst-top0,即表示的是栈顶元素的下一个位置所以当我们想要获取栈顶元素时我们需要对其进行-1操作返回栈顶元素。 //获取栈顶元素 STDatatype TopST(ST* pst) {assert(pst);assert(!STEmpty(pst));return pst-a[pst-top-1]; }十、获取栈的size 直接将pst-top进行返回操作。 //获取栈的size int STSize(ST* pst) {assert(pst);return pst-top; }
http://www.pierceye.com/news/610520/

相关文章:

  • iis7 添加php网站网站为什么需要空间
  • 网站到首页排名h5怎么制作的
  • 网站制作教程 pdf下载培训网站制作网站
  • 网站开发文档范例国外服务器租用价格表
  • 六安网站制作费用怎么做百度提交入口网站
  • centos7做网站做pc端网站讯息
  • 驻马店建设网站安徽全过程网站搭建案例
  • 企业网站推广费用wordpress相册汉化版
  • 怎么做正规网站广告网站设计怎么样
  • 深圳营销型网站公司电话云渲染网站开发
  • 生成网站有吗免费的网站建设服务有哪些内容
  • 网站建设制作公司思企互联超级采购小程序怎么注册
  • 燕郊做网站找谁wordpress登录修改
  • 大概开发一个网站多少钱php做网站商城系统怎么样
  • wordpress网站程序员登录百度账号
  • wordpress trac网站优化公司哪家好
  • 网站建设cms系统抖音seo推广外包公司好做吗
  • 南宁商城网站建设logo设计网站生成器
  • 南京电信网站空间扩容无锡大型网站设计公司
  • 网站建设 考核指标wordpress4.9升级失败
  • 什么网站可以做名片网站后台登陆密码忘记
  • 韩式摄影网站源码内蒙古建设安全监督站的网站
  • 做阿里巴巴网站可以贷款吗印尼做网站的教学 中文
  • 做旅游宣传不错的网站成都制作网站的公司简介
  • 上海网站制作优化app软件开发平台游戏
  • 江苏省通信建设交易中心网站PHP+Ajax网站开发典型实例
  • 邵阳市住房和建设局网站中国万网商城
  • 网站设计建设流程wordpress删除插件
  • 微信属于营销型网站江苏茂盛建设有限公司网站
  • 电商网站源代码企业推广是什么意思