随笔分类 -  数据结构

摘要:1.编一C程序,它能根据读入的数据构造有向图G,并输出G的DFS遍历序列(从V0开始), 图的输入形式为n V0 Vi0 V1 Vi1 V2 Vi2...Vi Vin 1 1( 1, 1为输入结束标记,其余的值都 =0且 它们都是整数,且100 n 0。(注:程序的可执行文件名必须是 e2.exe, 阅读全文
posted @ 2019-11-01 00:42 snail灬 阅读(134) 评论(0) 推荐(0) 编辑
摘要:1.编一C程序,它能对输入的一串整数(不多于1000个,以 9999为结束标记, 9999不参与排序), 进行冒泡排序(从小到大排序),输出排序结果和所用的关键字比较次数。 ~~~c include define END 9999 define MAX_SIZE 1005 int array[MAX 阅读全文
posted @ 2019-10-31 22:26 snail灬 阅读(151) 评论(0) 推荐(0) 编辑
摘要:1.编一C程序,它能根据输入的字符(字母或 )序列来构造一棵二叉树,并能输出该二叉树后序和中序序列, 并计算出该二叉树度数为2的节点个数。输入是该二叉树经扩充后的结点前序遍历序列,扩充方法是: 对无左孩子的结点,增加一个标记为的做孩子结点:对无右孩子的结点,增加一个标记为的右孩子结点。 例如,若要构 阅读全文
posted @ 2019-10-31 22:18 snail灬 阅读(507) 评论(0) 推荐(0) 编辑
摘要:平均查找长度: ASL=i=1nPiCi 其中N为结点的个数,Pi是查找第i个结点的概率,默认情况下查找每个结点的概率是相同的, 平均查找长度可以简化为: ASL=1ni=1nCi 查找 阅读全文
posted @ 2019-10-25 18:56 snail灬 阅读(158) 评论(0) 推荐(0) 编辑
摘要:表示方法:树形表示法、嵌套集合表示法、凹行表示法、广义表表示法 度为0的是叶子节点或者终端节点 度不为0的是非终端节点或者分支节点或者内部节点 根节点称为开始节点 数的存储结构:双亲表示法、孩子链表法、孩子兄弟表示法 树常用遍历:前序遍历和后序遍历 森林常用遍历:前序遍历和后序遍历 前序遍历一个树等 阅读全文
posted @ 2019-10-25 18:55 snail灬 阅读(197) 评论(0) 推荐(0) 编辑
摘要:性质1 在二叉树的第i层至多有2i1个结点(i1) 性质2 深度为K的二叉树至多有2k1个节点 (k1) 二叉树的遍历 前序遍历 中序遍历 后序遍历 线索二叉树 一棵结点数目为n的二叉树,采用二叉链表的形式存储。对于每个结点均有指向左右孩子的两个指针域,而 阅读全文
posted @ 2019-10-25 18:54 snail灬 阅读(164) 评论(0) 推荐(0) 编辑
摘要:队列的基本运算:置空队列、判空队列、入队列、出队列、取队列头 顺序队列(循环队列) 置空队列 ~~~c void InitQueue(CirQueue Q){ Q front=Q rear=0; } ~~~ 判空队列 ~~~c int QueueEmpty(CirQueue Q){ return Q 阅读全文
posted @ 2019-10-25 18:53 snail灬 阅读(170) 评论(0) 推荐(0) 编辑
摘要:栈 栈主要有空栈、判栈空、判栈满、进栈、出栈、取栈顶元素六种。 顺序栈 空栈: 判栈空 ~~~c int StackEmpty(SeqStack S){ return S top== 1; } ~~~ 判栈满 ~~~c int StackFull(SeqStack S){ return S top 阅读全文
posted @ 2019-10-25 18:52 snail灬 阅读(145) 评论(0) 推荐(0) 编辑
摘要:有向图 无向图 图的遍历 深度优先遍历类似树的前序遍历,若采用邻接矩阵算法时间复杂度O(n2),若采用邻接表表示时间复杂度O(n+e)。 广度优先遍历类似树的按层次遍历,若采用邻接矩阵算法时间复杂度O(n2),若采用邻接表表示,时间复杂度为O(n+e)。 图的生成树和最小生成树 最小生成 阅读全文
posted @ 2019-10-25 18:48 snail灬 阅读(136) 评论(0) 推荐(0) 编辑
摘要:排序方法:插入、选择、交换、归并、分配排序 插入排序 直接插入排序 流程图: 代码实现: void InsertSort(int arr[]){ for (int i = 1; i < arr.length; i++) { //需要插入的数据 int temp = arr[i]; int j = i 阅读全文
posted @ 2019-10-25 18:48 snail灬 阅读(262) 评论(0) 推荐(0) 编辑
摘要:二维数组 Am×n 按行优先存储内存中,没个元素占d个存储单元,求数组元素 aij 的地址。 公式: LOC(aij)=LOC(a00)+(i×n+j)× d; 矩阵压缩存储 对称矩阵(aij=$a_{ji} 阅读全文
posted @ 2019-10-25 18:25 snail灬 阅读(120) 评论(0) 推荐(0) 编辑
摘要:优点:链表不需要初始化容量,可以任意加减元素,并且添加与删除元素十分快捷,只需要改变指针域指向的内容即可 , 内存利用率高, 缺点:查找元素,需要通过遍历链表来查找,十分耗时 适用于:需要频繁添加或者删除操作的场景 单链表和双向链表 在存储空间方面:单链表需要的存储空间比双向链表的要少,因为双向链表 阅读全文
posted @ 2019-10-25 18:24 snail灬 阅读(123) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示