- 博客(3)
- 收藏
- 关注
原创 栈与队列
栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除 操作的一端称为栈顶,另一端称为栈底。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out) 入队列:进行插入操作的一端称为队尾 出队列:进行删除操作的一端称为。队列也可以数组和链表的结构实现,使用链表的结构实现更优一些,因为如果使用数组的结构,出队列在数组头上出数据,效率会比较低。
2024-07-11 14:51:58 262
原创 链表
概念:链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。1. 无头单向非循环链表:结构简单,一般不会单独用来存数据。实际中更多是作为其他数据结。2. 带头双向循环链表:结构最复杂,一般用在单独存储数据。实际中使用的链表数据结构,都。构的子结构,如哈希桶、图的邻接表等等。另外这种结构在笔试面试中出现很多。2. 没有增容消耗,按需申请节点空间,不用了直接释放。1. 任意位置插入删除时间复杂度为O(1)以节点为单位存储,不支持随机访问。是带头双向循环链表。
2024-07-11 14:15:55 91
原创 时间复杂度和空间复杂度计算
1.什么是时间复杂度和空间复杂度?1.1算法效率算法效率分析分为两种:第一种是时间效率,第二种是空间效率。时间效率被称为时间复杂度,而空间效率被称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间.1.2 时间复杂度的概念时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。算法中的基本操作的执行次数,为算法的时间复杂度。1.3 空间复杂度的概念空间复杂度是对一个算法在运行过程中临时占用存储空间
2024-06-10 21:31:50 534 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人