数据结构
文章平均质量分 69
苦张罗
穷通未定,请可劲张罗。
展开
-
线性表
线性表 线性表的基本操作: InitList(&L)初始化,构造一个空的线性表。 ListLength(L)求长度,返回线性表中数据元素个数 GetElem(L,i,&e)取表L中第i个数据元素赋值给e LocateElem(L,e)按值查找,若表中存在一个或多个值为e的结点,返回第一个找到的数据元素的位序,否则返回一个特殊值 ListInsert(&L,i,e...原创 2018-08-09 17:09:39 · 147 阅读 · 0 评论 -
栈
栈 定义:限定只在表的一端(表尾)进行插入和删除操作的线性表 特点:FILO,LIFO 栈顶(top):允许插入和删除的一端 栈底(bottom):另一端 问题: 进出栈的顺序 求栈的容量 栈中元素实际个数 操作: 元素进栈 元素出栈 初始化 判空 判满 顺序栈 限定在表尾进行插入和删除操作的顺序表 类型定义: typedef struct{ SEle...原创 2018-08-09 18:02:33 · 229 阅读 · 0 评论 -
队列
队列 定义:限定在表的一端进行删除,在表的另一端进行插入操作的线性表 队头(front):允许删除的一端 队尾(rear):允许插入的一端 特性:FIFO 链队列——队列的链式存储结构 实质是带头结点的线性链表 两个指针: 队头指针Q.front指向头结点 队尾指针Q.rear指向尾结点 初始态:队空条件 头指针和尾指针均指向头结点:Q.front=Q.rear 链队...原创 2018-08-10 15:17:56 · 117 阅读 · 0 评论 -
树与二叉树
树与二叉树 术语: 叶子结点:度为0的结点 树的度: 二叉树 定义: 特点: 每个结点的度<=; 是有序树 二叉树的性质: 若二叉树的层次从1开始,则在二叉树的第i层最多有个结点 深度为k的二叉树最多有-1个结点(k>=1) 对任何一颗二叉树,如果其叶子结点个数为n0,度为2的叶子结点个数为n2,则有n0=n2+1 具有n个结点的完全二叉树的深度为{log2N}...原创 2018-08-10 18:49:31 · 150 阅读 · 0 评论 -
图和图的应用
图 定义:图是由顶点集V和顶点间的关系集合E(边的集合)组成的一种数据结构,可以用二元组定义为:G=(V,E) 术语: 有向图和无向图:在图中,若用箭头标明了边是由方向性的,则为有向图,否则称为无向图。 完全图:具有n个顶点,n(n-1)/2条边的图,称为完全无向图。具有n个顶点,n(n-1)条弧的有向图,称为完全有向图,两者都称为完全图。 稠密图:边数多于完全图的一半 稀疏图:边数少...原创 2018-08-10 21:07:11 · 1824 阅读 · 0 评论 -
查找
查找 查找:在一个含有众多数据元素(或记录)的查找表中,找出某个特定的数据元素(或记录)。 术语: 记录: 关键字: 主关键字: 次关键字: 查找表: 动态查找: 静态查找: 内部排序: 外部排序: 稳定性: 静态查找 顺序查找:是用待查找记录与查找表中的记录逐个比较,若找到相等记录,则查找成功,否则查找失败。 性能分析:假设对查找表中的数据元素实施查找的概率相同即P...原创 2018-08-11 19:29:04 · 206 阅读 · 0 评论 -
绪论
绪论 基本概念和术语: 数据:描述客观事物的数字、字符以及所有能输入到计算机中并被计算机程序处理的符号的集合。 数据元素:数据的基本单位,在计算机程序中,通常作为一个整体进行考虑和处理。 数据项:数据的不可分割的最小单位 数据对象:性质相同的数据元素的集合,是数据的一个子集。 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。 另一种定义:按照逻辑关系组织起来的一批数据,按...原创 2018-08-08 21:38:21 · 148 阅读 · 0 评论 -
排序
排序 插入排序(直插排序,二分排序,希尔排序) 交换排序(冒泡排序,快速排序) 选择排序(直选排序,树型排序,堆排序) 归并排序(二路归并排序,多路归并排序) 分配排序(多关键字排序,基数排序) 排序算法的稳定性:关键码相同的数据对象在排序过程中是否保持前后次序不变。不变则稳定,变则不稳定。 排序的时间开销:衡量算法好坏的最重要的标志,常用算法执行中的数据比较次数和数据移动次数来衡量...原创 2018-08-28 18:26:32 · 102 阅读 · 0 评论