你对本章内容的小结: 这章讲了栈和队列的定义和应用和他们相关的一些操作 还有递归的基本操作 递归和迭代是完全不一样的方法 每个方法都有自己的优越性 迭代时间复杂度和空间复杂度很少 比递归少 但是递归的代码简洁 可以从最小的子问题来考虑终止调节再加上循环的调节即可 递归的里面容易出现重子问题 可以dp ...
分类:
其他好文 时间:
2020-04-26 17:09:12
阅读次数:
51
在第三章的学习中,掌握了栈和队列定义以及相关操作的知识点,还了解了递归操作与栈的联系。说说这章的学习收获吧,相较于前面2章,我在看书本的基础上会根据自己的理解在纸上把一些操作的示意图画出来去更好地理解这个操作是怎么运作的,我发现这样可能比光看书去理解的话效果会更好一点。然后在没一小节结束之后,我都尝 ...
分类:
其他好文 时间:
2020-04-26 10:36:20
阅读次数:
58
这一章学习了栈和队列栈学习了它的基本操作:初始化,入栈,出栈,取栈顶元素。值得注意的一点是用链表存储方式的话,指针是指向上一个节点的,老是忘记。例子如括号匹配。然后学了递归,和栈类似也是先进后出,核心思想是“分而治之”,是从问题顶层分解到底层的思想,与之相对的是迭代,它是自底向上分析计算的。递归代码 ...
分类:
其他好文 时间:
2020-04-26 01:34:09
阅读次数:
64
栈和队列 栈和队列的定义和特点 栈(stack):仅在表尾进行插入或删除操作 表尾(栈顶) 表头(栈底) 后进先出 队列(queue):只允许在表的一端进行插入,另一端删除元素 插入端(队尾rear) 删除端(队头front)先进先出 #案例引入 数制的转换:非负十进制整数->等值八进制数 产生:从 ...
分类:
其他好文 时间:
2020-04-25 23:20:37
阅读次数:
76
第三章学习了栈和队列两种新的数据结构。整体上看是顺序表和链表的推广,结合指针对存储空间进行存取,并结合栈和队列各自对数据处理的顺序特点, 可具体应用在特殊的应用场景中。 栈分为顺序栈和链式栈两种,分别是顺序表和链式表结合指针,指向栈底和栈顶。 在栈的学习中,结合了递归和迭代算法。 通常把自底向上求解 ...
分类:
其他好文 时间:
2020-04-25 19:03:02
阅读次数:
64
栈 首先说一下栈是什么以及和队列区别 栈和队列是两个有序列表,两者之间的区别就是栈是先进后出,而队列先进先出 栈的实现 stl中的栈 stl中的队列 双端队列 可以在队列两端进行插入删除 一道例题 题目链接:https://www.luogu.com.cn/problem/P1044 虽然题目名字叫 ...
分类:
其他好文 时间:
2020-04-25 16:52:36
阅读次数:
68
栈和队列 1.栈 栈:栈是一种仅支持在表位插入删除的线性表。栈底称为表头,栈顶称为表尾。 栈的存储结构: 顺序存储: 顺序栈:用一组地址连续的内存单元依次存放从栈底到栈顶元素的结构。 栈的入栈操作是:栈顶指针+1,元素入栈。 栈的出栈操作是:元素出栈,栈顶指针-1。 共享栈:两个栈共享栈顶空间,两个 ...
分类:
其他好文 时间:
2020-04-17 23:38:47
阅读次数:
66
在此之前,已经了解过顺序表和链表了,那么现在要了解的栈和队列,从本质上来说是基于上述俩个的,栈讲究“”后进先出”,而队列与之不同,要求“先进先出”,对于栈来说,根据规则,我们了解到,栈的“入栈”即为“尾插”,栈的出栈也要找到“尾数据”,考虑到实用性,我们的“栈“是基于顺序表完成的。这里就不细细展开了,而对于本次要讲的“队列”,根据使用规则,会发现,入队列类似“尾插”,出队列是“首”,因此,为了效率
分类:
其他好文 时间:
2020-04-08 13:40:07
阅读次数:
104
使用栈和队列, 1 #include<stack> 2 #include<queue> 定义int型的栈和队列如下 1 stack<int> stk; 2 queue<int> q; 栈的基本方法: 1 s.empty() 如果栈为空返回true,否则返回false 2 s.size() 返回栈中元 ...
分类:
其他好文 时间:
2020-04-07 18:34:50
阅读次数:
71
1. 栈 类似于一个口的客栈,先进去的后出来,后进去的先出来,代码实现如下: Stack() 创建一个空的新栈。 它不需要参数,并返回一个空栈。 push(item)将一个新项添加到栈的顶部。它需要 item 做参数并不返回任何内容。 pop() 从栈中删除顶部项。它不需要参数并返回 item 。栈 ...
分类:
编程语言 时间:
2020-04-06 17:17:27
阅读次数:
65