3合1网站建设价格,链接提取视频的网站,商城服务,想招人去哪个平台免费基本概念 时间复杂度 #xff08;ii*2#xff09;外层循环次数为 log₂n#xff0c;(ji)内层循环次数为 124...2^(log₂n) ≈ 2n#xff0c;因此总时间复杂度为 O(n)。 队
初始时队列为空#xff0c;front和rear应指向同一位置#xff08;通常为0#xff09;#…基本概念 时间复杂度 ii*2外层循环次数为 log₂n(ji)内层循环次数为 124...2^(log₂n) ≈ 2n因此总时间复杂度为 O(n)。 队
初始时队列为空front和rear应指向同一位置通常为0且第一个元素入队时直接放入A[0]rear后移。
循环队列的元素个数为 (rear - front M) % M
rear的计算公式为 (front size) % M
出队是front 入队是rear 。然后两个都要对队列大小取余 注意看题目是一个队列 不是两个开口不一样的队列 串
子串个数 算数表达
考虑计算式的优先级 谁先算 栈
入栈时注意top的初值若为0则若为某一数值则--。
出栈后的计算结果不再入栈接着跟着后面的算位于第二位操作数 稀疏矩阵
保存行列数即可 链表
插入s
先连接p后面的再让s连上p 删首尾元素 链接地址即指向下一个元素的地址
如图 a-e变成了a-f则链接地址从1010变到f的1014了。f-e则为e的地址1010
答案为c 删除循环双链表p节点 插到头结点之后 上三角-行优先
坐标6,6前五行之和为50 树
结点 无右孩子结点数 非叶结点数 2011 - 116 1895
中
按照经过每个结点的顺序 即为排序顺序
前中后——左下右都从根节点出发
前序中左右 无图判断排序 根节点右边就是右子树的所有节点
除开根节点第一个是左子树的根节点 在中序中 左边就是左子树
变得就是根节点 二叉树
根据度分别求和的别忘记加上根节点1总结点数
二叉排序树
进入的节点和根节点、父节点比较大往右小往左
左子树完全小于根节点
右子树大于根节点
查找路径
对于路径上的每个节点后续节点要么全部小于它左子树要么全部大于它右子树 给出的大小按照中序遍历输出
完全二叉树
叶节点向上取整非叶结点向下取整 平衡二叉树
平衡因子定义为左子树高度 - 右子树高度
求平衡因子0的分支节点直接总结点数-叶节点
左旋示范 最终 三叉树 最少结点数 Nmin3的h-1次/2
森林
注意题目所问的F是森林则本题选D 哈夫曼树
结点数
哈夫曼树的总结点数 叶子结点数 内部结点数 n (n - 1) 2n - 1
哈夫曼编码
前缀编码不能是其他编码的前缀 差不多大的可以放在同一行 最小带权路径WPL
构建哈夫曼树乘以层数
加权平均长度
构建哈夫曼树乘以层数。结果除以元素频次 最小生成树
权值和最小且无环路
Krusal——克鲁斯卡尔算法
边数少
按照权值大小单独连
按照边的权值大小以次按从小到大的顺序把节点连起来只要连通就不必走完权值大小的尽头最大的那个不可以构成回路
相同权值大小只要不构成回来可以都连上权值小的优先 Prim
节点少的情况
把找到的节点当成整体
从当前节点出发找连接的结点中权值最小的那个结点把这两个结点当成一个整体再以次求最小权值和。注意 不可形成回路 图
连通
强连通
删掉入度 / 出度为0的点。以此删去剩下的不能再删的整体为一个强连通分量。被删掉的顶点各为1位强连通分量 完全图
任意两个顶点之间都有边
保证连通
最少n-1最大Cn2组合
确保 即Cn2 -1 保证确保 n个顶点的无向图连通的最少边数为
相当于排列组合 确保强连通
确保连通的结果*2 度
根据邻接矩阵判断顶点的度数——画图记边数有向则都要记 广度
以顶点0为原点把绳子拉直一层一层读取 深度DFS
进入死胡同则后退一步回到上一个节点 DJ最短路径
纳入整体再更新大小链接不到先放无穷
注意题目所问的是出现的顶点而不是每个顶点的最短路径大小 先按照题目所给再更新 拓扑排序 AOE关键路径
关键路径是从源点到汇点路径长度最长的路径决定了工程的最短工期
关键活动的延迟会导致工期延长
查找
折半次数 排序
大概原理
1.选择排序 2.冒泡排序
重复比较相邻的 3.快速排序
适合顺序存储要排序的数据已经基本有序的情况下不利
不一定选择最中间的 4.插入排序 5.希尔排序
按照增量序列分组再进行插入排序 6.归并排序
先两两分组进行过一趟以后不一定能选出一个放在最终位置 简单选择排序每次选一个最小的数和第12 、3....交换位置
3为排序假装第一个不存在 从左找一个比原来大的从右找一个比原来小的。大的和小的交换位置小的和原来的交换位置 堆排序
把小的往上提 堆排序
其实是二叉树
大根堆、小根堆
大根堆删去顶端后把最小的放到根节点然后再进行比较
小根堆操作与之相反
给定序列——固定序列。 加入数据自己建树边建边改。填充的时候也要以此填充如下图 大根堆排序
排序从n/2向下取整个节点开始比较若子节点大则交换然后按照前面的顺序以次比较
大根堆:最大的在上面出去得到由大到小的排序
小跟堆 最小的在上面由小到大 拓扑排序
基本规则 选择一个无前驱的顶点入度为0输出并删除其出边。 重复直到所有顶点输出
哈希函数 散列
二次探测
不是单纯的1往后退了
二次探测的增量序列为1, -1, 4, -4, 9, -9, ...即 ±i²i1,2,3,... 优劣
数据表中有10000个元素如果仅要求求出其中最大的10个元素则采用 堆排序算法最节省时间