- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
武汉大学实验报告资源与环境科学院系地理信息系统专业 2013年12月22号实验名称利用链式堆栈和队列实现回文判断指导老师游涟姓名冯萱班级地信三班学号2012301130082成绩实验原理利用链式队列先进先出的特点和链式堆栈的先进后出的特点可以很容易的判断一个字符串是不是回文的,本实验利用了这些特点完成了队列和堆栈的创建和初始化、定义、入队入栈、出队出栈、取栈顶元素队头元素,以及撤销队列和堆栈等函数并实现调用二、实验目的熟练运用堆栈和队列的各种操作,并会运用他们的特点做一些实际的应用。实验步骤:把堆栈的创建及操作函数放到LStack头文件下:1:定义节点结构体:typedefstructsnode{DataType data;structsnode *next;}StNode;2:初始化堆栈:void StackInitiate(StNode ** head){if((*head=(StNode*)malloc(sizeof(StNode)))==NULL) exit(1);(*head)-next=NULL;}3:判断堆栈非空:intStackNotEmpty(StNode *head){if(head-next==NULL) return 0;elsereturn 1;}4:入栈函数:intStackPush(StNode *head,DataType x){StNode *p;if((p=(StNode *)malloc(sizeof(StNode)))==NULL){printf(内存空间不足无法插入!\n);return 0;}p-data=x;p-next=head-next;head-next=p;return 1;}5:出栈函数:intStackPop(StNode *head,DataType *d){StNode *p=head-next;if(p==NULL){printf(堆栈已空,出错!);return 0;}head-next=p-next;*d=p-data;free(p);return 1;}6:取栈顶元素:intStackTop(StNode *head,DataType *d){StNode *p=head-next;if(p==NULL){printf(堆栈已空出错!);return 0;}*d=p-data;}7:撤销堆栈:void Destory(StNode *head){StNode *p,*p1;p=head;while(p!=NULL){p1=p;p=p-next;free(p1);}}把对队列的创建及操作函数放到LQueue头文件下:1:头结点结构体的创建:typedefstructqnode{DataType data;structqnode *next;}LQNode;2:队首队尾指针结构体的创建:typedefstruct{LQNode *front;LQNode *rear;}LQueue;3:初始化队列:void QueueInitiate(LQueue *Q){ Q-rear = NULL;Q-front = NULL;}4:判断队列非空:intQueueNotEmpty(LQueue Q){if(Q.front==NULL) return 0;else return 1;}5:入队函数:intQueueAppend(LQueue *Q,DataType x){LQNode *p;if((p=(LQNode *)malloc(sizeof(LQNode)))==NULL){printf(内存空间不足!\n);return 0;}p-data=x;p-next=NULL;if(Q-rear!=NULL) Q-rear-next=p;Q-rear=p;if(Q-front==NULL) Q-front=p;return 1;}6:删除队列元素:intQueueDelete(LQueue *Q,DataType *d){LQNode *p;if(Q-front==NULL){printf(队列已空无数据可删!\n);return 0;}else{*d=Q-front-data;p=Q-front;Q-front=Q-front-next;if(Q-front==NULL) Q-rear=NULL;free(p);return 1;}}7:得到队列元素:intQueueGet(LQueueQ,DataType *d){if(Q.front==NULL){printf(队列已空无数据可取!\n);return 0;}else{*d=Q.front-data;return 1;}}8:撤销队列:void Destory(LQueue Q){LQNode *p,*p1;
您可能关注的文档
- 第二章 栈与队列.ppt
- 采煤工艺 教学及交流课件.ppt
- 复合材料固化过程中温度和应变场分布的解析解_李君.pdf
- 01章 C语言数据描述与C程序设计初步.ppt
- 七年级科学地球仪与地图3.ppt
- VB第10节电子讲稿.ppt
- 那些珍贵图片,此乃神贴,鉴定完毕!!!.doc
- 杨泰鹏 巴西葡语会话和文法1.pdf
- 第8-2篇 数据库保护技术(并发).ppt
- 车刀刀片的槽型选择和刀杆选择.ppt
- 甘肃金昌市永昌县第一高级中学2025-2026学年高一上学期12月月考政治试题(无答案).pdf
- 上海大学附属宝山外国语学校2025-2026学年七年级上学期期中英语试卷(含答案,无听力原文及音频).pdf
- 贵州省黔东南州剑河县第四中学2025-2026学年九年级上学期半期水平检测道德与法治试卷(含答案).pdf
- 河南省新乡市获嘉县2024-2025学年上学期九年级历史期中试题(有答案).pdf
- 2026届广东省汕头市金山中学高三上学期阶段考试历史试卷 (含答案).pdf
- 甘肃省兰州市兰州新区 2024-2025学年八年级下学期期末水平测试道德与法治试题(含答案).pdf
- 2025及未来5年加纤塑胶项目投资价值分析报告.docx
- 2025及未来5年中国氯霉素糖衣片行业发展市场调查数据研究报告.docx
- 2025及未来5年绵羊油护手霜项目投资价值分析报告.docx
- 2025及未来5年公寓用总线型对讲机项目投资价值分析报告.docx
最近下载
- 2025年6月全国大学英语CET四级真题和答案解析(全三套).pdf
- 医院污水处理方案.docx VIP
- 2020NFPA 855固定式储能系统安装标准.pdf VIP
- 大学生社会实践-流动的急救课堂智慧树知到期末考试答案2024年.docx VIP
- 精品度假酒店设计.pptx
- 2024-2025学年人教版小学六年级数学下册第三单元《圆柱的表面积和体积的计算》专项试卷及答案.docx VIP
- BB-T 0053-2023模内标签-标准图集.docx VIP
- 纪检监察笔录培训课件.pptx VIP
- 股份公司董事会向经理层授权管理办法附董事会授权事项清单.docx VIP
- 高温操作寿命HTOL及早期失效EFR计算公式.xls VIP
原创力文档


文档评论(0)