![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构C++学习笔记
文章平均质量分 93
记录在学习过程中遇到的问题,以及代码实操
偏爱晚风_ly
Why so serious?
展开
-
8. 数据结构C++学习笔记——树和森林
根据这一特性,可以用一维数组来存储树的各个结点(一般按层序存储),数组中的一个元素对应树中的一个结点,其中包含结点的数据信息,以及该结点的双亲在数组中的下标。这种储存方法便于实现树的各种操作,例如要访问某个结点x的第i个孩子,先通过x的第一个孩子结点指针找到第一个孩子之后,沿着孩子结点的右兄弟域连续走i-1步,便可以找到x的第i个孩子。其中,data是数据域,储存树中结点的数据信息。1. 加线 若p结点是双亲结点的左孩子,则将p的右孩子,右孩子的右孩子...沿分支找到所有右孩子,都与p的双亲用线连起来。原创 2023-05-26 20:42:20 · 218 阅读 · 1 评论 -
5.数据结构C++学习笔记——串
串是字符串的简称,形象地说就是,把一列字符连成一串作为一个处理对象。之前学习栈和队列都是线性结构,可以表示为,栈和队列是操作受限的线性表,而串是内容受限的线性表,数据元素只能是字符。在汇编程序和编译程序里面,源程序和目标程序都是字符串数据,在事务处理系统、文字编辑系统、事务问答系统、自然语言翻译系统以及音乐分析等一系列系统中,都是以字符串数据作为处理对象的。把由零个或多个任意字符组成的有限数列叫串,如:s为串名等号后面双引号里面的字符序列是串的值,n是串的长度,n=0时为空串。原创 2023-05-10 15:07:02 · 263 阅读 · 1 评论 -
3.数据结构C++学习笔记——栈(顺序)
ADT Stack{数据对象:数据关系:约定为栈顶,为栈底。基本操作:初始化、进栈、出栈、取栈顶元素等等}ADT Stack。原创 2023-05-07 09:36:26 · 893 阅读 · 1 评论 -
1.数据结构C++学习笔记——线性表(顺序储存)
● 线性表是是一种线性结构具有相同特性的数据元素的一个有限序列,数据元素之间的关系是线性。线性表中的数据元素类型可以为简单类型,也可以为复杂类型。● 数据元素的个数n定义为表的长度,当n=0时,称为空表。● 将非空的线性表(n>0)记作,这里的数据元素只是一个抽象的符号,其具体含义在不同的情况下可以不同。原创 2023-04-26 13:50:16 · 1052 阅读 · 2 评论 -
2.数据结构C++学习笔记——线性表(链式储存)
有关线性表的定义上一篇已经介绍,所以直接介绍链式储存的特点(2条消息) 1.数据结构C++学习笔记——线性表(顺序储存)_偏爱晚风_ly的博客-CSDN博客概念:线性表的链式表示,又称为非顺序映像,或链式映像。● 用一组物理位置任意的储存单元,来存放线性表的数据元素。● 这组存储单元即可以是连续的,也可以是不连续的,甚至是零散分布在内存的各个位置上●逻辑上相邻的数据元素,在物理上不一定相邻。链表:n个节结点由指针域组成一个链表。结点:数据元素的储存映像,由数据域和指针域组成。原创 2023-05-05 18:22:46 · 252 阅读 · 2 评论 -
4.数据结构C++学习笔记——队列(顺序)
队列也是一种线性表的特例,其插入和删除操作在表的两边进行,允许插入元素的一端称为队尾,即端,允许删除元素的一端叫队头,即端,它是一种先进先出(FIFO)的线性表,插入元素称为入队,删除元素称为出队。队列的储存结构分为链队和顺序队,常用为循环线性队。图1.1 队列结构示意图逻辑结果:同线性表相同,仍为一对一关系。由于队列具有先进先出的特性,使得队列成为程序设计中的有用工具。脱机打印输出:按申请的先后顺序依次输出多用户系统中,多个用户排成队,分时地循环使用CPU和主存。原创 2023-05-08 12:17:09 · 711 阅读 · 0 评论