1. 简单介绍 链表,即线性表的链式存储结构,链表使用一组任意的存储单元来存储数据元素。如果某两个数据元素在逻辑位置上相邻,那么他们在物理位置上不一定相邻。如图: 但是这样看着太乱了,为了看着舒服,表示方便,我们把这张图改成: 2. 单向链表的结构和特点 在上图中,我们可以看出一个链表包含了存储的数 ...
分类:
其他好文 时间:
2020-07-05 15:36:49
阅读次数:
50
定义及特性 定义 是n个数据元素的有限序列,若将线性表记为$(a_1,...,a_,a_i,a_{i+1},...,a_n)$,则表中$a_$领先于$a_i$,$a_i$领先于$a_i+1$,称$a_$是$a_i$的直接前驱元素,$a_{i+1}$是$a_i$的直接后继元素。 线性表元素的个数$n( ...
分类:
编程语言 时间:
2020-07-05 13:42:30
阅读次数:
60
栈 定义 栈是限定仅在表尾进行插入或删除操作的线性表。因此对栈来说,表尾端有其特殊含义,称为栈顶,表头端称为栈底。不含元素的空表称为空栈。栈顶实现元素的进出,栈的修改遵循后进先出的原则。因此,栈又称为**后进先出(last in first out)**的线性表(简称LIFO结构)。 表示及实现 栈 ...
分类:
编程语言 时间:
2020-07-05 13:22:58
阅读次数:
67
点击使用幕布网页版查看(含思维导图)[栈] 点击使用幕布网页版查看(含思维导图)[队列] 栈(stack) 特点:操作受限的线性表,只允许在一端插入和删除数据,后进先出 顺序栈,入栈操作有两种情况: 栈空间足够,那么直接入栈就行(定义不涉及内存搬移的入栈操作为simple-push操作,时间复杂度为 ...
分类:
其他好文 时间:
2020-07-03 17:51:42
阅读次数:
67
这个还越来越多了, 什么是线性表 线性表的基本操作 两个操作的具体实现。 什么是钱(元晶,金币) 同类数据元素的有序线性表 钱的几种操作 钱包 花钱 赚钱 查我有多少钱,查我某天赚了多少钱,查我第一次赚了100是什么时候。 钱操作的具体实现。 顺序存储 他这个代码还挺难的,我很想复制,但是元晶的钱包 ...
分类:
其他好文 时间:
2020-07-03 12:37:48
阅读次数:
69
首元结点就是指链表中存储的第一个数据元素的结点,就是结点Li 头指针是指向链表中的第一个结点的指针,如果有头结点,那么头指针所指结点为头结点,否则为首元结点 头结点是在首元结点之前附加的一个点,其指针域指向首元结点。 eg:当数据元素为整型时,头结点的数据域可以保存线性表的长度。 ...
分类:
其他好文 时间:
2020-07-02 23:17:12
阅读次数:
105
栈(Stack) 队列(Queue) 线性表 链表 先进后出 先进先出 top (front,rear) (data,link) (prior,next) | 只能在表的一端进行插入和删除操作的线性表 | 只能在表的一端进行插入和在另一端进行删除操作的线性表 |允许在表内任一位置进行插入和删除|| ...
分类:
其他好文 时间:
2020-07-01 14:17:53
阅读次数:
74
一. 队列 1.队列定义:只允许在表的一端进行插入,表的另一端进行删除操作的线性表。 2.循环队列:把存储队列的顺序队列在逻辑上视为一个环。 循环队列状态: 初始时:Q.front=Q.rear=0 front指针移动:Q.front=(Q.front+1)%MaxSize rear指针移动:Q.r ...
分类:
编程语言 时间:
2020-07-01 00:11:18
阅读次数:
88
前置知识——迭代器: 迭代器是一个变量,相当于容器和操纵容器的算法之间的中介。迭代器可以指向容器中的某个元素,通过迭代器就可以读写它指向的元素。 vector $\text $可以看成是什么都可以放进去的线性表。 用法: vector<int>v;//vector元素为 int 型 vector<i ...
分类:
其他好文 时间:
2020-06-30 22:56:15
阅读次数:
94
码字不易,喜欢请点赞!!!1.数据结构基础2.线性表(顺序存储、链式存储) 元素之间是有顺序的:第一个元素无前驱,最后一个元素无后继,其他元素都有前驱和后继顺序存储结构:用一段地址连续的存储单元一次存储线性表的数据元素(存取时间复杂度为O(1),插入或删除时间复杂度为O(N),适合数据量不大并且存取 ...
分类:
编程语言 时间:
2020-06-30 12:41:35
阅读次数:
97