第三章学习小结

第三章主要学习了关于栈和队列的知识,知道了有关栈和队列的初始化和基本操作。栈是只在一头进行插入与删除操作的数据结构,而队列是可以在两头进行插入与删除操作的数据结构。此外栈和队列分别可以分为链栈与顺序栈,链队与顺序队列。栈的特点是先进后出,队列的特点是先进先出。

在这里分享有关栈的函数:

#include <stack> //头文件

stack <elemtype> L //定义栈

push():L.push(x) 将数据x放在栈顶

top():L.top()返回栈顶元素

pop():L.pop()将栈顶元素删除

empty():L.empty()可以判断是否为空栈,为空则返回true,否则返回false。

此外在写有关于栈和队列的代码时,要注意:

1.栈溢出的问题,不要过度地引用递归。

2.顺序队列的存储空间的假溢出问题。

原文地址:https://www.cnblogs.com/xiedehan/p/10625000.html

时间: 2024-11-01 12:08:00

第三章学习小结的相关文章

第三章学习小结—-转

[学习目标] 01掌握一维数组的声明和使用方法(OK) 02掌握二维数组的声明和使用方法(OK) 03掌握字符串的声明.赋值.比较和连接方法(连接很少用) 04熟悉字符的ASCII码和ctype.h中的字符函数 05正确认识++.+=等能修改变量的运算符(OK) 06学会用编译选项-Wall获得更多的警告信息(OK) 07了解不同操作系统中换行符的表示方法(嗯) 08掌握fgetc和getchar的使用方法(fgetc基本没用过) 09掌握预处理和迭代开发的技巧(嗯) 程序3-1 逆序输出 输入

数据结构 第一章学习小结

数据结构   第一章学习小结 1.数据结构第1章的心得体会: 这周学习了数据结构的绪论及第一章.初步了解了数据结构与算法的相关概念,一开始看书看视频时觉得还挺抽象的,不能够完全理解.但是反复多看了几遍之后,结合例题,自己去操作去跑代码,慢慢觉得容易理解接受起来了.由于现在以网课形式进行教学,老师上课的同时基本还是靠自己去理解学习.当然老师也发挥很大的作用,比如让我们更深入的了解递归的空间复杂度为什么与问题规模有关,又怎样去找到该函数的临界值等等.既锻炼了我们深入思考的能力,也让我们更加清楚了解不

第三章内容小结

1.内容小结:在第三章的学习中我们学习到了两种特殊的线性表:栈和队列. (1)特殊性:栈:限定仅在表尾(栈顶)进行插入或者删除的线性表,后进先出. 队列:只允许在表的一端进行插入(队尾),而在另一端(队头)进行删除的线性表.先进先出. (2)存储方式:顺序存储(顺序栈:循环队列)和链式存储(链栈:链队). (3)主要操作: 栈:入栈和出栈.对于顺序栈的入栈和出栈操作前要判断栈满或栈空. 队列:入队和出队.对于顺序队的循环队列进队和出队操作要判断队满或队空.涉及队头或队尾指针的修改都要将其对MAX

《构建之法》第三章学习心得

这周我学习了<构建之法>第三章,讲述了软件工程师的成长.软件系统的绝大部分模块都是由个人开发或维护的.在软件工程的术语中,这些单个的成员叫做Individ-ual Contributor(IC).IC在团队中的流程是怎么样的呢?以开发人员为例,流程如下. 1.通过交流.实验.快速原型等方法,理解问题.需求或任务 2.提出多种解决办法并估计工作量 3.其中包括寻找以前的解决方案,因为很多工作是重复性的 与相关角色交流解决问题的提案,决定一个可行的方案 执行,把想法变成实际中能工作的代码,同时验证

201671010105 2016-2017-2《Java程序设计》第三章学习心得

通过学习第三章,我的总结有以下几点: 先说内容,第三章我们主要学习的是java的基本程序设计结构,学习了与之相关的一些内容,注释,数据类型,变量,运算符,字符串,输入输出语句,数组等等,在这些内容中,有些是在C语言中同样可以学到的,我们上学期已经学过,但也有很多是与c不一样的,是首次接触,比如注释,无论是java还是c语言,对于编程者而言,给自己编写的程序注释是一种良好的习惯,不止自己看懂,别人也能看懂,又比如数据类型,java中多了byte(字节型)和boolean(布尔型).在后面内容中也有

ch3第三章的小结——杨智雯

第四周c++学习情况. 学习情况:周一在实验室上了第三章的输入输出流,上课状态良好,老师讲的都明白了.周三老师讲解了师兄给我解释过的数组问题,但是还是不是很懂,了解了直接用c1之类的字符型直接加减数字来使输出发生变化,并学习了如何使字符型变量变成表格中的数字号码. 遇到的困难:可是ch3中的编程作业统计和保留小数的问题,老师应该是没有讲到的,我并不会啊!!/(ㄒoㄒ)/~~咨询了师兄,可是按照师兄的解法还是输出不了啊!!!实验二的内容经过老师的讲解基本上都解决了问题,再acm培训课程中也了解了具

20165233 Java第二、三章学习总结

2017-2018-2 <Java程序设计>第二周学习总结 教材学习内容总结 第二.三章 ch2 标识符与关键字 基本数据类型: 逻辑类型:boolean 整数类型:int.byte.short.long(注意:long型常量用后缀L来表示:且Java中没有无符号声明) 字符类型:char 浮点类型:float.double(float常量后面必须有后缀f或F ) 类型转换运算 输入.输出数据 数组 ch3 运算符与表达式 if条件分支语句 switch开关语句 循环语句(包括for语句.wh

第三章学习总结

第三章 栈和队列 本章我们学习了线性结构的另外两种表现形式:栈和队列. 栈:只限定仅在表尾进行插入或删除的线性表.表尾段称作栈顶,表头端称作栈底,它的修改原则是后进先出,用于按照保存数据时的相反顺序来使用数据.类似于我们生活中放书拿书,最后叠上去的最早被抽出来. 队列:是一种先进先出的线性表,它只允许在表的一段进行插入,而在另一端删除元素.允许插入的一段称为队尾,允许删除的一段称为队头.它类似于我们生活中排队买东西,先来的先买,先输入的数据先输出. 接下来谈谈我在做作业时所遇到的问题. 括号匹配

数据结构第四章学习小结

第四章主要是串和数组的学习,之前对串和数组的应用仅限于对其单独处理,本章学习着重于对具体题目的实际操作,实践了串的模式匹配算法,对其有了更深入的了解,数组的应用拓展到了稀疏矩阵的存储的实现. 一.串 串的模式匹配 BF算法 首先未匹配到串尾时,将两个字符串一一匹配,可用C++自带的length()函数实现 while(i<=S.length()&&j<=T.length()) 接下来就是匹配的过程 if(S[i]==T[j]){ i++;j++; }//若匹配则继续比较下一位