![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 92
恋上数据结构与算法代码实现
小的时候可菜了
这个作者很懒,什么都没留下…
展开
-
KMP 算法
来自:程序员代码面试指南:IT名企算法与数据结构题目最优解(第2版)左程云 P54228. 实现 strStr()如果字符串str中含有子串match,则返回match在str中的开始位置,不含有则返回-1KMP算法是如何快速解决字符串匹配问题的?生成match字符串的nextArr数组nextArr[i]的含义在match[i]之前的字符串match[0..i-1]中以match[i-1]结尾的后缀子串(不能包含match[0])与必须以match[0]开头的前缀子串(不能包含matc原创 2021-09-23 19:57:07 · 133 阅读 · 1 评论 -
动态规划题型
动态规划解题套路框架动态规划问题的一般形式就是求最值如何求最值呢? 首先,则将所有可行的答案穷举出来,然后再其中找最值以后遇到求最值问题,首先思考如何穷举所有可能的结果动态规划三要素三要素:重叠子问题、最优子结构、状态转移方程1️⃣穷举时可能存在“重叠子问题”,暴力穷举可能导致效率低下,所以需要“备忘录”或“DP table”来优化穷举过程,避免重复计算2️⃣其次,动态规划问题具备“最优子结构”,这样才能通过子问题的最值得到原问题的最值3️⃣列出正确的“状态转移方程”,才能正确的穷举如原创 2021-08-12 17:53:38 · 151 阅读 · 0 评论 -
碰撞圆代码
package zhang.start;import javax.swing.*;import java.awt.*;//视图层public class AlgoFrame extends JFrame { private final int canvasWidth; private final int canvasHeight; public AlgoFrame(String title) { this(title, 1024, 768); }原创 2020-07-16 22:06:47 · 166 阅读 · 0 评论 -
HashMap
package zhang.map;import zhang.tree.rbtree.printer.BinaryTreeInfo;import zhang.tree.rbtree.printer.BinaryTrees;import java.util.LinkedList;import java.util.Objects;import java.util.Queue;@SuppressWarnings({"unchecked", "rawtypes"})public class H原创 2020-07-09 21:50:15 · 126 阅读 · 0 评论 -
树
树(Tree)的基本概念节点的度(degree):子树的个数树的度:所有节点度中的最大值(图中的1有5个度 所以该树的度为5)节点的深度(depth):从根节点到当前节点的唯一路径上的节点总数节点的高度(height):从当前节点到最远叶子节点的路径上的节点总数树的深度:所有节点深度中的最大值 (图中的221、222、223)树的高度:所有节点高度中的最大值 (图中的1)二叉树每个节点的度最大为 2(最多拥有2颗子树)左子树和右子树是有顺序的真二叉树:所有节点的度都原创 2020-06-21 16:51:18 · 133 阅读 · 0 评论