
数据结构
数据结构
爱喝水的李师傅
空有人间自由身
却非人间自由人
展开
-
1.1 数据结构的基本概念
一、基本概念和术语1.数据:数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料。2.数据元素:数据元素是数据的基本单位,通常作为一个整体进行进行考虑和处理。一个数据元素可由若干个数据项组成,数据项是构成数据元素的不可分割的最小单位3.数据对象:数据对象是具有相同性质的数据元素的集合,是数据的一个子集。4.数据类型:数据类型是一个值的集合和定义在此集合上的一组操作的总称。(1)原子类型:其值不可再分的原创 2020-10-27 08:39:16 · 166 阅读 · 0 评论 -
1.2 算法和算法评价
1.算法是对特定问题求解步骤的一种描述,它是指令的有限序列其中的每条指令表示一个或多个操作。此外,一个算法还具有下列5个重要特性(1)有穷性:一个算法必须总在执行有穷步后结束,且每一步都可在有穷时间内完成(2)确定性:算法中每条指令必须有确切的含义,对于相同的输入只能得到相同的输出(3)可行性:算法中描述的操作都可以通过已经实现的基本运算执行有限次来实现(4)输入:一个算法有零个或多个输入(5)输出:一个算法有一个或多个输出通常,设计一个好的算法应考虑达到以下目标:(1)原创 2020-10-27 08:38:53 · 423 阅读 · 0 评论 -
2.1 线性表的定义和基本操作
一、线性表的定义1.线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列,其中n为表长,当n=0时线性表是一个空表。若用L命名线性表,则其一般表示为L=(a1,a2,...,an)式中,a1是唯一的第一个数据元素,又称表头元素;an是唯一的最后一个数据元素,又称表尾元素。除第一个元素外,每个元素仅且有一个直接前驱。除最后一个元素外,每个元素有且仅有一个直接后继。2.线性表是一种逻辑结构,表示元素之间一对一的相邻关系二、线性表的操作InitList(&L):初始化表原创 2020-11-04 08:35:39 · 230 阅读 · 0 评论 -
2.2 线性表的顺序表示
一、顺序表的定义1.线性表的顺序存储又称顺序表。它是用一组地址连续的存储单元依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻。2.线性表中元素的位序是从1开始的。3.一维数组可以是静态分配的,也可以是动态分配的。在静态分配时,由于数组的大小和空间事先已经固定,一旦空间占满,再加入新的数据将会产生溢出,进而导致程序崩溃。 而在动态分配时,存储数组的空间是在程序执行过程中通过动态存储分配语句分配的,一旦数据空间占满,就另外开辟一块更大的存储空间,用以替换原来的存原创 2020-11-08 22:57:38 · 265 阅读 · 0 评论 -
2.3 线性表的链式表示
一.单链表的定义1.线性表的链式存储又称为单链表,它是指通过一组任意的存储单元来存储线性表中的数据元素。为了建立数据元素之间的线性关系对每个链表结点,除存放元素自身的信息外,还需要存放一个指向其后继的指针。2.单链表中结点类型的描述如下:typedef struct LNode //定义单链表结点类型{ ElemType data; //数据域 struct LNode *next; //指针域}LNode,*LinkList;3.利用单链表可以解决顺序表需要大量连续存储单元的缺原创 2020-11-09 20:49:11 · 120 阅读 · 0 评论 -
3.1 栈
一、栈的基本概念1.栈的定义 栈是只允许在一端进行插入或删除操作的线性表。首先栈是一种线性表,但限定这种线性表只能在一端进行插入和删除操作。 栈顶。线性表允许进行插入删除的那一端。 栈底。固定的,不允许进行插入和删除的另一端。 空栈。不含任何元素的空栈。 栈的数学性质:n个不同元素进栈出栈元素不同排列的个数为卡特兰数,为(1/n+1)(C n 2n)2.栈的基本操作InitStack(&S):初始化一个空栈SStackEmpty(S):判断栈是否为空栈Push(&S,x原创 2021-03-03 17:07:06 · 339 阅读 · 1 评论 -
3.2 队列
一、队列的概念1.队列,一种操作受限的线性表,只允许在一端插入,在另一端删除。其操作特性是先进先出。队头。允许删除的一端。队尾。允许插入的一端。空队列。不含任何元素的空表。2.队列常见的基本操作。InitQueqe(&Q):初始化队列,构造一个空队列QQueueEmpty(Q):判队列空,若队列Q为空则返回true,否则返回falseEnQueue(&Q,x):入队,若队列Q未满,将x加入,使之成为新的队尾DeQueue(&Q,&x):出队,若队列Q非空,原创 2021-03-08 13:14:24 · 180 阅读 · 0 评论