swiper手机网站案例,全球购海外商城官网,站长网站提交,安徽餐饮加盟网站建设目录
卡特兰数Catalan#xff1a;出栈序列/二叉树数
树
二叉树
N01N2
哈夫曼树#xff08;最优二叉树#xff09;Huffman
度m的哈夫曼树只有度为0和m的结点#xff1a;Nm(n-1)/(m-1)
平衡二叉树AVL
Nh表示深度为h最少结点数#xff0c;则N00#xff0c;N11#…目录
卡特兰数Catalan出栈序列/二叉树数
树
二叉树
N01N2
哈夫曼树最优二叉树Huffman
度m的哈夫曼树只有度为0和m的结点Nm(n-1)/(m-1)
平衡二叉树AVL
Nh表示深度为h最少结点数则N00N11N22NhNh-1Nh-21
最小生成树
图
最短路径
模式匹配
BF模式匹配最坏T(n)O(m*n)实际 接近O(mn)
KMP模式匹配O(mn) 完整见前端笔试常考设计模式操作系统数据结构ACM模板经典算法正则表达式常用方法_前端考试模板_参宿7的博客-CSDN博客
卡特兰数Catalan出栈序列/二叉树数
一个栈的进栈序列为123...n有多少个不同的出栈序列
合法的出栈序列的数量出栈序列的总数-非法序列的数量
∵先序中序 可 唯一 确定 一棵二叉树 其关系 就如 入栈序列出栈序列 可 唯一 确定 一个 栈
∴先序 确定 二叉树个数即先序 确定 中序个数
NLR确定LNRLN、NL相当于压栈R相当于进了立即出
∴h(n)Catalan卡特兰数 树
二叉树
N01N2
哈夫曼树最优二叉树Huffman
度m的哈夫曼树只有度为0和m的结点Nm(n-1)/(m-1)
平衡二叉树AVL
Nh表示深度为h最少结点数则N00N11N22NhNh-1Nh-21 最小生成树 定义连通无向带权 图 的生成树权值之和最小的唯一当任意环中边的权值相异则最小生成树唯一 普里姆Prim算法 克鲁斯卡Kruskal算法 共同 基于贪心算法 特点 从顶点开始扩展最小生成树 按权递增次序选择不构成环的边
图
最短路径 Dijkstra算法 Floyd算法 问题 单源最短路径单起源到各个顶点的最短距离从源点的临近点开始 各个顶点之间的最短路径
模式匹配
主串S长n模式串T长m。T在S中首次出现的位置
BF/朴素模式匹配最坏T(n)O(m*n)实际 接近O(mn)
KMP模式匹配O(mn)
next[j]T的第j个字符失配于S中的第i个字符需要用T的第next[j]个字符与S中的第i个字符 比较
abcdeabff失配第next[j]3个字符c比较T起点开始和失配点结束的最大公共前缀
next[1]0i;next[2]1next[j]i不变; 模式匹配过程
S中第i个charT中第j个charj指向 失配点/ jm全部匹配成功 为 一趟
虽KMP的T(n)O(mn)
但实际中BF的T(n)接近O(mn)
∴至今采用
只有T中有很多部分匹配KMP才明显快