![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 52
常威你为什么打来福
这个作者很懒,什么都没留下…
展开
-
算法-红黑树的左旋右旋
1、左旋 private void leftRotate(RBTreeNode node) { RBTreeNode right = node.right; RBTreeNode parent = node.parent; if (parent == null) { root = right; right.parent = (null); }原创 2021-04-20 17:47:52 · 183 阅读 · 0 评论 -
算法-AC状态机算法
AC自动机算法文章目录AC自动机算法前言1、构建字典树2、构建fail指针3、开始查询4、测试5、输出结果总结前言AC自动机算法(构建模式串,类似KMP的模式串(短的字符串作为模式串),用于字符串匹配1、构建字典树static class AcNode { //孩子节点用HashMap存储,能够在O(1)的时间内查找到,效率高 Map<Character, AcNode> children = new HashMap<>(); AcNode f原创 2021-04-20 17:10:12 · 502 阅读 · 0 评论 -
算法-我的算法总结
1、while(i < length && s.charAt(i) == ’ ') i++; // 找到不是空格的字符2、判断两个字符串是否一致if(s.length() != t.length()){ return false;}int[] bucket = new int[26];for (int i = 0; i < s.length(); i++) { bucket[s.charAt(i) - 'a']++;}for (int i = 0;原创 2021-04-17 13:36:42 · 277 阅读 · 0 评论 -
算法-LRU
利用双向链表实现LRU算法package lru;import java.util.HashMap;/** * 模拟redis淘汰策略 * @author mac * @param <K> * @param <V> */public class LRU<K,V> { LRU(int size){ this.capacity = size; cache = new HashMap<K,Node<K,V>>(size);转载 2020-08-01 19:29:15 · 50 阅读 · 0 评论