随笔分类 -  数据结构与算法

摘要:规范:节点size不小于兄弟节点的任意一个子节点size(不能比侄子小) 阅读全文
posted @ 2019-09-25 14:54 莹狼 阅读(215) 评论(0) 推荐(0)
摘要:package newcoder; import java.util.HashMap; import java.util.List; import java.util.Stack; public class UnionFind { public static class Element<V> { public V value; public Element (V value) { this.val 阅读全文
posted @ 2019-09-25 14:54 莹狼 阅读(107) 评论(0) 推荐(0)
摘要:import java.util.ArrayList; import java.util.Comparator; import java.util.List; /** 定义: 1. 节点中元素升序排序 2. 每个叶节点有相同的高度 3. 节点有 n 个元素,至多有 n+1 个子节点 4. 每个节点最少 t-1 个元素,最多 2t-1个元素( t 由程序员指定) 5. 根节点至少2个子节点 搜索:按 阅读全文
posted @ 2019-09-25 14:53 莹狼 阅读(107) 评论(0) 推荐(0)
摘要:前言 PMT:PMT中的值是字符串的前缀集合与后缀集合的交集中最长元素的长度 Next数组:PMT向后移一位,最前位补-1。每个位置记录的则是前面的字符串的前缀集合与后缀集合的交集中最长元素的长度 代码 阅读全文
posted @ 2019-08-27 11:18 莹狼 阅读(141) 评论(0) 推荐(0)
摘要:一、核心思想 1、深度优先搜索 用栈做辅助,做回溯判断(搜索到哪一点就push,回溯就pop),直至初始点也回溯完。 2.广度优先搜索 利用队列的先进先出特点,每一轮都将当前节点的儿子们放进队列,一轮遍历结束时,当前层的儿子们已经放入队列,重复下去。 二、代码 阅读全文
posted @ 2019-08-27 10:52 莹狼 阅读(226) 评论(0) 推荐(0)
摘要:平衡二叉树规则:每个节点左右孩子高度差不大于1 阅读全文
posted @ 2019-08-26 07:30 莹狼 阅读(216) 评论(0) 推荐(0)
摘要:1. 插入排序 /** * 升序排列:每个数都一步一步往前找到自己的位置,前面的数是排序好的。 *算法复杂度:O(n*n) */ public static void getInsertSort(int[] a) { if(a == null || a.length == 0) { System.o 阅读全文
posted @ 2019-07-19 18:00 莹狼 阅读(213) 评论(0) 推荐(0)