![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 78
清纯献给了作业
出于热爱,忠于完美。
展开
-
数组模拟单链表和双链表
写在前面我们在上面两篇文章中简单的介绍了顺序线性表和链式顺序表的基础知识。要发挥链表动态分配内存空间的优势,需要使用指针建立链表。但是,在信息学竞赛中,我们基本上不需要过多考虑动态空间分配,所以,使用数组模拟链表就可以很好的实现链表数据结构。数组模拟链表,是一种半静态链表,是链表的线性存储,比链式存储要简单的多了,最大的优点是快很多。每个链表可以用一对数组或一个记录数组表示,每个元素是有两个数据域:分别是数据 data 域和下一个结点在数组中的位置 next 域(整型的)。这样插入,删除,遍历等,都可以原创 2021-11-05 21:45:46 · 330 阅读 · 0 评论 -
数据结构与算法笔记第2章 线性表 链式表示
2.5 链式结构的表示和实现头指针,头结点和首元结点:头结点的好处:①便于首元结点的处理;②便于空表和非空表的处理;链式存储的特点:①结点在存储器中的位置是任意的,即逻辑上相邻的数据元素在物理上不一定相邻;②访问时只能通过头指针进入链表,并通过每个结点的指针域 依次向后顺序扫描其余结点,所以寻找第一个结点和最后一个结点所花费的时间不等;带头结点的单链表2.5.1 单链表的表示单链表的存储结构:typedef struct{ int num; char name[20];原创 2021-02-17 13:26:22 · 1194 阅读 · 3 评论 -
数据结构与算法笔记第2章 线性表 顺序表示
2.1 线性表的定义和特点定义:线性表是具有相同特性的数据元素的一个有限序列;ai-1,ai,ai+1 中ai-1为直接前趋ai+1为直接后继;线性表是典型的线性结构;2.2 案例引入一元多项式表示,记作 Pn(x)=p0+p1x+p2x2+…+pnxn,其中设定指数为 i 系数为 pi例如:P(x)=10+5x-4x2+3x3+2x4 表示为一元多项式的运算:实现两个多项式加,减,乘运算;运算原理是分别从头遍历比较存放一元多项式的两个数组a和b的每一项,指数相同则相加存放在新数组中,指原创 2021-02-04 21:41:30 · 433 阅读 · 0 评论 -
数据结构与算法笔记第1章 绪论
目录基本概念1.数据:数值型和非数值型2.数据元素:是数据的基本单位3.数据项:构成数据元素的最小单位4.数据>数据元素>数据项5.数据对象:性质相同的数据元素的集合6.数据结构:数据元素相互之间的关系逻辑结构1.线性结构:有且仅有一个开始和一个终端结点,并且所有结点最多只有一个直接前趋和一个直接后继2.非线性结构:一个结点可能有多个直接前趋和直接后继存储结构1.顺序存储结构2.链式存储结构(指针)抽象数据类型的表示与实现例:关于圆的函数1.抽象 类型定义AD原创 2021-02-01 21:20:25 · 197 阅读 · 2 评论