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

wordpress 点点模版上海网页优化公司

wordpress 点点模版,上海网页优化公司,网站专题方案,14年网站开发经验写在前面本篇文章开始讲解栈的有关知识#xff0c;其实把顺序表和链表学好#xff0c;那么这一章便不在话下#xff0c;栈实际上就是顺序表或链表的一些特殊情况。用顺序表实现的栈叫做顺序栈用链表实现的栈叫做链栈文章的内容分为几个部分#xff0c;希望读者能快速了解文…写在前面本篇文章开始讲解栈的有关知识其实把顺序表和链表学好那么这一章便不在话下栈实际上就是顺序表或链表的一些特殊情况。用顺序表实现的栈叫做顺序栈用链表实现的栈叫做链栈文章的内容分为几个部分希望读者能快速了解文章的脉络架构栈的存储结构——即用结构体定义包括顺序表栈和链栈栈的基本操作——入栈和出栈栈的应用——完整的可执行程序利用前面的基本操作栈的经典力扣题推荐先识概念允许插入和删除的一端叫做栈顶(top)另一端叫做栈底(bottom)栈和递归联系紧密可以用栈来模拟递归的实现过程更多知识还是翻书为妙、再看思想顺序存储结构#define MAXSIZE 100 #define OK 1 #define ERROR 0typedef int Status; typedef int ElemType;//顺序栈存储结构 typedef struct {ElemType data[MAXSIZE];int top; }SqStack;//进栈 Status Push(SqStack* S, ElemType e) {//栈满if (S-top MAXSIZE - 1)return ERROR;S-top;//将新插入的元素赋值给栈顶S-data[S-top] e;return OK; } /* 1.函数参数接收一个结构体类型的指针大S一个int型变量e 2.首先判断那把移动的标尺top(我们将其下标存入其中)是否等于最大值-1栈满的情况就不能进栈了 3.再把元素的值存入S的数据域之中 *///出栈 //若栈不空则删除栈顶元素用e返回其值 Status Pop(SqStack* S, ElemType* e) {if (S-top -1)return ERROR;//将要删除的栈顶元素赋值给e*e S-data[S-top];//栈顶指针-1S-top--;return OK; } /* 1.函数参数接收一个结构体类型的指针变量大S一个整型指针类型的变量e 2.我们要出栈自然栈中得有元素若没有就结束运行 3.删除栈顶元素之前把栈顶结点的数据记录下来让栈顶计数器top减去1 */链栈//链栈 typedef struct LinkNode {ElemType data;struct LinkNode* next; }LinkNode,*LinkStack;//进栈 Status Push(LinkStack* S, ElemType e) {//创建新结点LinkNode* p (LinkNode*)malloc(sizeof(LinkNode));p-data e;p-next *S;(*S) p;return OK; } /* 1.函数参数接收链栈指针类型的指针变量大S,整型类型的元素e 2.首先我们创建一个新结点把它的数据域赋值为e,指针域指向栈顶结点 3.让栈顶指针指向p结点成为新的栈顶结点 *///出栈——若栈不为空则删除S的栈顶元素用e返回其值 Status Pop(LinkStack *S, ElemType* e) {LinkNode* p;if (SNULL)return ERROR;*e (*S)-data;//将栈顶结点赋值给pp *S;*S (*S)-next;free(p);return OK; }/* 1.函数参数接收链栈类型的指针大S整型指针e 2.如果是空栈就没有出栈的必要直接返回0 3.把结点的数据域赋值给e,用临时指针指向栈顶指针然后把栈顶指针指向栈顶下面的结点(栈的指针由栈顶指向栈底) 4.之后把临时指针所指向的结点释放即可 */再学应用这是一份可运行的入栈和出栈代码运用了上面的链栈来实现#define _CRT_SECURE_NO_WARNINGS 1 #includestdio.h #includemalloc.h #includestdlib.h#define OK 1 #define ERROR 0typedef int Status; typedef int ElemType;//链栈 typedef struct LinkNode {ElemType data;struct LinkNode* next; }LinkNode, *LinkStack;Status InitStack(LinkStack* S) {*S NULL;return OK; } Status Push(LinkStack* S, ElemType e) {//创建新结点LinkNode* p (LinkNode*)malloc(sizeof(LinkNode));p-data e;p-next *S;*S p;return OK; }Status Pop(LinkStack* S, ElemType* e) {LinkNode* p;if (*S NULL)return ERROR;*e (*S)-data;//将栈顶结点赋值给pp (*S);*S (*S)-next;free(p);return OK; }int main() {int i 0;//初始化链栈LinkStack S;ElemType e;InitStack(S);//进栈printf(请输入5个整数入栈);for (i 0; i 5; i){scanf(%d, e);Push(S, e);}//出栈printf(依次出栈为);for (i 0; i 5; i){Pop(S, e);printf(%d , e);}return 0; }写在最后学完顺序表和链表之后,栈就很简单了,把上面的基础搞懂之后,下一篇文章我们学习后缀表达式以及中缀表达式转后缀表达式和经典栈题目的解答;232. 用栈实现队列 - 力扣LeetCode——简单——放到队列讲完再解答20. 有效的括号 - 力扣LeetCode ——简单1047. 删除字符串中的所有相邻重复项 - 力扣LeetCode——简单150. 逆波兰表达式求值 - 力扣LeetCode——中等 点赞你的认可是我创作的动力⭐ 收藏你的青睐是我努力的方向✏️ 评论你的意见是我进步的财富
http://www.w-s-a.com/news/675990/

相关文章:

  • 爱站网站长seo综合查询工具局网站信息内容建设 自查报告
  • 我想建一个网站怎么建淄博网站推广那家好
  • 做网站和app需要多久河南自助建站建设代理
  • 大连做企业网站的公司宣传平台有哪些类型
  • 如何用微信做网站免费设计logo网站有哪些
  • 服务平台型网站余姚网站定制
  • 网站搭建联系方式太平阳电脑网网站模板
  • 请简述网站制作流程html5网络公司网站模板
  • 海尔集团企业网站建设分析重庆市建设银行网站
  • 介绍公司的网站有哪些广西壮族自治区
  • 网站做rss wordpress9 1短视频安装软件
  • 网站建设价格西安室内设计网站排行榜前十名知乎
  • 用nas建设服务器网站用vs做音乐网站
  • 天津市武清区住房建设网站网站自适应框架
  • 制作移动网站公司网站开发职业规划
  • 网站头部怎样做有气势wordpress 页面 锚
  • 秦皇岛网站建设系统推荐个人网站免费制作
  • 我做夫人那些年网站登录wordpress 扫码付费
  • 网站关键词代码怎么做公司 网站建设
  • 哈尔滨多语言网站建设wordpress分类链接
  • 购物网站项目介绍软件开发流程的五大步骤
  • 做的网站怎么放在网上2008 iis搭建网站
  • 网站维护服务公司上海兼职网站制作
  • 企业做网站需要多少钱湘潭九华网站
  • 嘉兴建站服务微营销官网
  • 比较好的网页模板网站浦项建设(中国)有限公司网站
  • 有趣的个人网站网页设计与制作的岗位职责
  • 有建设网站的软件吗长沙做网站的公司对比
  • 网站的外链接数中铝长城建设有限公司网站
  • 北京建设网站公司网站建设费用 无形资产