数据结构
文章平均质量分 69
你代码出BUG了
这个作者很懒,什么都没留下…
展开
-
MOOC数据结构不挂科
第八章 排序考点插入排序(稳定的)时间复杂度O(n2)空间复杂度O(1)选择排序(不稳定的)时间复杂度O(n2)空间复杂度O(1)冒泡(沉底)排序(稳定的)时间复杂度O(n2)空间复杂度O(1)归并排序(稳定的)-2路(划分为两个部分)时间复杂度O(n*log n)空间复杂度O(1)快速排序(不稳定的)在子序列里面再次做快排可用于外部排序时间复杂度O(n*log n)空间复杂度O(1)...原创 2022-03-21 17:09:57 · 490 阅读 · 0 评论 -
MOOC数据结构不挂科
第五章 图考点图的基本概念(多对多的逻辑结构)图的存储结构/表现方式顺序存储---->邻接矩阵链式存储---->邻接表邻接矩阵和邻接表的比较邻接矩阵的优点找到两个顶点便可以找出关系,时间复杂度为O(1)邻接矩阵的缺点邻接矩阵无论如何都需要一个二维数组[n][n] ,在各顶点度较少时浪费大量空间邻接表的优点在边较少的时节省许多空间---->适用于稀疏图邻接表的缺点无法直接获取某条边的信息,需要vi链表从头进行顺序存原创 2022-03-03 10:20:06 · 209 阅读 · 0 评论 -
MOOC数据结构不挂科
第四章 树和二叉树考点树和森林二叉树结构二叉树:每个结点的度至高为2(至多有两个孩子),也可以1个或0个,分别成为左孩子和右孩子二叉树的重要性质两种特殊的二叉树满二叉树(Full)完全二叉树(Complete)(允许有空缺,但空缺只能是最后一层的最右边)树/森林转换为二叉树(左孩子又兄弟)二叉树的顺序存储实现二叉树的链式实现二叉树的遍历三种遍历的主要区别在于当前结点的访问的先后伪代码三种遍历顺序中,左子树都先于右子树先序遍历是第一次访问到该节原创 2022-03-01 14:21:29 · 335 阅读 · 0 评论 -
数据结构MOOC浙大笔记
第三讲 树(上)什么是树查找查找:根据某个给定关键字K,从集合R中找出关键字与K相同的记录静态查找 没有插入和删除操作,只有查找动态查找 除了查找,还可能发生插入和删除静态查找方法1:顺序查找时间复杂度O(n)Tbl是一个一个指针的结构,有两个变量typedef struct LNode *List;struct LNode{ ElementType Element[MAXSIZE]; //数组Element int length; //数组大小lengt原创 2021-12-06 11:41:45 · 238 阅读 · 0 评论 -
数据结构MOOC浙大笔记
第二讲线性结构2.5小白专场一元多项式的加法与乘法运算题意理解设计函数分球求两个一元多项式的乘积与和已知两个多项式(1)3x4-5x2+6x-2(2)5x20-7x4+3x多项式和:5x20-4x4-5x2+9x-2多项式乘积:15x24-25x22+30x21-10x20-21x8+35x6-33x5+14x4-15x3+18x2-6x题意理解求解思路1.多项式的表示2.程序框架3.读多项式4.加法实现5.乘法实现6.多项式输出多项式的表示 数组:编程简原创 2021-12-05 18:29:30 · 1082 阅读 · 0 评论 -
数据结构MOOC浙大笔记
第二讲线性结构2.4应用实例多项式加法运算实现思路实现方法采用不带头结点的单向链表,按照指数递减的顺序排列各项具体的数据结构的结构类型的定义struct PloyNode{ int coef; //系数 int expon; //指数 struct PloyNode *link; //指向下一个结点的指针};typedef struct PloyNode *Ploynomial;Ploynomial P1, P2;设计一个函数,函数参数是传入两个多项式Polyn原创 2021-12-05 11:51:07 · 267 阅读 · 0 评论 -
数据结构MOOC浙大笔记
第二讲线性结构2.3队列队列的基础知识队列:具有一定操作约束的线性表特点: 插入和删除操作:只能在一端插入,而在另一端删除数据插入:入队列数据删除:出队列先进先出数据对象集:一个有0个或多个元素的有穷线性表操作集:长度为MaxSize的堆栈S∈Stack,堆栈元素item∈ElementType1.Queue CreateQueue(int MaxSize):生成长度为MaxSize的空队列2.int IsFullQ(Queue Q, int MaxSize):判断队列Q是原创 2021-12-04 20:18:04 · 320 阅读 · 0 评论 -
数据结构MOOC浙大笔记
第二讲线性结构2.2堆栈堆栈的基础知识堆栈是一种线性结构,也是一个特殊的线性表堆栈的引入例子:计算机如何进行表达式求值5+6/2-34=5+3-34=8-12=-4由两类对象构成运算数运算符不同的运算符优先级不一样堆栈(Stack):具有一定操作约束的线性表特点:只在一端(栈顶)做插入、删除插入数据:入栈删除数据:出栈后入先出数据对象集:一个有0个或多个元素的又穷线性表操作集:长度为MaxSize的堆栈S∈Stack,堆栈元素item∈ElementT原创 2021-12-04 14:18:20 · 286 阅读 · 0 评论 -
数据结构 MOOC浙大笔记
第二讲线性结构2.1线性表及其实现初始化(建立空的顺序表)List MakeEmpty(){ List PtrL; PtrL = (List)malloc(sizeof(struct LNode));//通过malloc函数动态申请结构的空间 PtrL->Last = -1;//Last代表表里最后一个元素 return PtrL; }查找(在Last中查找X的位置)int Find(ELementType X, List PtrL) //PtrL是一个线性表结构的原创 2021-12-03 17:33:36 · 614 阅读 · 0 评论