文章目录:
一:选择题
注意2:二维数组位置变化
注意7:二叉树的遍历
注意9:快速排序
注意10:删除单链表中结点
注意16:基数排序
注意19:希尔排序
注意20:归并排序
注意21:返回值
注意22:单链表插入一个新结点时间复杂度不变
注意23:m叉树中N0
注意24:连通图的深度优先遍历顶点序列
注意25:经过栈的作用后输出序列的第一个元素是n,则输出序列中第i个输出元素是n+1-i
注意26:哈夫曼带权路径长度【最优生成树不唯一】
注意28:时间复杂度不受数据初始状态影响而恒为O(nlog2n)的是堆排序
注意29:二叉树的先序遍历序列和后序遍历序列正好相反则任一结点无右孩子
注意30:一趟排序结束后不一定能够选出一个元素放在其最终位置上的是希尔排序
注意32:顺序查找不论在顺序线性表中还是在链式线性表中的时间复杂度为O(n)
注意34:入队列的操作
注意35:设某无向图中有n个顶点e条边,则建立该图邻接表的时间复杂度为O(n+e)
注意37:设用邻接矩阵A表示有向图G的存储结构,则有向图G中顶点i的入度为第i列非0元素的个数之和【出入——行列】
注意39:设无向图G中有n个顶点,则该无向图的最小生成树上有n-1 条边
注意41:单向循环链表判空条件
注意42.删除链式栈栈顶元素
注意44:建立一个长度为n的有序单链表的时间复杂度为O(n2)
注意46:散列表P的选择
注意47:在二叉排序树中插入一个关键字值的平均时间复杂度为O(1og2n)
注意48:二分法查找比较元素的顺序
注意49:完全二叉树深度
注意50:三叉链权度数为0的结点
注意51:无向图深度优先遍历
注意52:顺序线性表删除表中第i个元素需要移动n-i个元素
注意53:二叉树和森林的转换
注意54:利用直接插入排序法的思想建立一个有序线性表的时间复杂度为O(n2)
注意55:双向链表后面插入结点
注意56:设输入序列1、2、3、…、n经过栈作用后,输出序列中的第一个元素是n,则输出序列中的第i个输出元素是( n+l -i )
注意58:度数为0的结点数
注意59:设顺序表的长度为n,则顺序查找的平均比较次数为 (n+1)/2
注意61:有向无环图的拓扑
注意62:二叉排序树的深度【二叉排序树的生成方法】
注意63:单链表插入的结点
注意64:下三角矩阵
注意66:哈夫曼带权路径长度
注意67:线性探测法
注意68:插入排序
注意69:冒泡排序
二:判断题
三:填空题
注意10:筛选法建立的初始堆
注意11:邻接表的深度优先遍历和广度优先遍历
注意16:中序_______遍历二叉排序树中的结点可以得到一个递增的关键字序列(填先序、中序或后序)【记忆】
注意20:双向循环链表删除结点
注意21:二叉排序树的方法-求高度【记忆】
注意23:哈夫曼树的构造【记忆】
注意27:顺序线性表插入删除一个元素移动元素个数
注意28:二叉树的遍历序列
注意29:顺序共享栈
注意30:下三角矩阵
注意35:单链表的插入操作
注意36:有向图拓扑排序序列
注意40:二叉树指针指向叶子结点
注意41:双向链表
注意42:直接插入排序
注意43:简单选择排序
注意45:希尔排序
注意46:二叉排序树中插入一个新结点
注意47:单链表插入结点
注意48:双向链表
注意53:单链表插入结点
注意54:冒泡排序
注意55:二叉排序树的平均查找长度
注意56:构造哈夫曼树
注意57:筛选法建成的初始堆
注意58:最小生成树上所有边的权值之和
注意60:多重链表表示【记忆】
注意61:单链表删除结点
注意63:散列表的平均查找长度
注意64:冒泡排序
注意65:简单选择排序
注意66:拓扑排序
四:算法填空题
注意1:二叉搜索树的查找——递归算法
注意2:入栈-出栈
注意3:实现在顺序散列表中查找值为x的关键字
注意4:实现在二叉排序树上查找关键值k
注意5:散列函数解决冲突的方法为链地址法
注意6:实现冒泡排序算法
注意7:实现二分查找算法
注意8:无向图的最小生成树边集合和权值
注意9.二叉树平均查找长度
注意10:散列表平均查找长度
注意11:实现一趟快速排序
注意12:建立二叉树
注意13:利用从尾部插入的方法建立单链表
五:阅读算法
注意1:单链表【建表-查找-插入-删除】
注意2:二叉树的存储结构【顺序存储-链式存储】
六:应用题
1.简单选择排序和直接插入排序
注意2:双向链表在p之前插入
注意3:二分查找的平均查找长度
注意4:普里姆算法
5.构造一棵二叉排序树
设有一组初始记录关键字为(45,80,48,40,22,78),要求构造一棵二叉排序树并给出构造过程。
七:计算题
注意3:用克鲁斯卡尔算法得到最小生成树
注意4:小根堆-大根堆
【算法】堆,最大堆(大顶堆)及最小堆(小顶堆)的实现
https://www.xuebuyuan.com/2147927.html
堆排序(浅谈大顶堆与小顶堆)
https://blog.csdn.net/weixin_43809223/article/details/100828727
最后一个非叶子节点就是:长度/2-1开始
将最大元素"沉"到数组末端
注意5:画出它的后序线索二叉树
注意6:待散列的线性表写出散列表、平均查找长度
注意7:画出广义表头尾链表存储结
注意8:森林
注意9:散列表
八:算法设计题/编写算法题
注意1:统计出单链表HL中结点的值等于给定值X的结点数
注意2:设有一组初始记录关键字序列
注意3:设有两个集合A和集合B
注意4:设计在单链表中删除值相同的多余结点的算法
注意5:设计一个求结点x在二叉树中的双亲结点算法
注意6:利用原单链表中结点空间设计出三个单链表的算法
注意7:在链式存储结构上交换二叉树中所有结点左右子树
注意8:在链式存储结构上建立一棵二叉排序树
注意9:判断两个二叉树是否相同
注意10:两个有序单链表的合并排序
注意11:在顺序有序表中实现二分查找的算法
注意12:判断二叉树是否为二叉排序树的算法
注意13:链式存储结构上设计直接插入排序算法
注意14:在链式结构上实现简单选择排序算法
注意15:在顺序存储结构上实现求子串算法
注意16:求结点在二叉排序树中层次的算法
注意17:在链式存储结构上统计二叉树中结点个数
注意18:将无向图的邻接矩阵转为对应邻接表的算法
注意19:计算二叉树中所有结点值之和
注意20:将所有奇数移到所有偶数之前
注意21:设计判断单链表中元素是否是递增
注意22:在链式存储结构上合并排序
注意23:在二叉排序树上查找结点X
注意24:关键字序列(k1,k2,…,kn-1)是堆,设计算法将关键字序列(k1,k2,…,kn-1,x)调整为堆
一:选择题1.用