![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 60
Zhang_Coda
这个作者很懒,什么都没留下…
展开
-
串的模式匹配——KMP算法理解
模式匹配算法——KMP算法 如图,L为字符串,L1为已经匹配了的字符子串,红色部分表示L1的下一位出现不匹配。假如在已经匹配了的子串中从某个位置开始,出现了新的匹配,即这里的L2。那么下一次对字符串的匹配只需要从L2开始进行匹配就可以了(如果子串中出现新的匹配,它必然在L2中,L2代表这最大的新匹配),而不需要从L1首位置的下一位开始。 由观察可以发现,L2为L1的后缀,而L2又是新的匹配,说明它必然和L1的前一部分相同,即它也是L1的前缀。因此要定位下次重新匹配的位置,我们只需从找到L1前缀和后缀相同最原创 2021-08-16 20:46:50 · 250 阅读 · 0 评论 -
二叉树的实现及非递归遍历
二叉树的定义 struct TreeNode { //二叉树结构体定义(来自leetcode) int val; TreeNode *left; TreeNode *right; TreeNode() : val(0), left(nullptr), right(nullptr) {} TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} }; ...原创 2021-08-14 20:55:33 · 115 阅读 · 0 评论