• Gacache 分布式缓存

    TOC TOC 简介 整体流程 LRU 队列 并发控制 一致性 Hash 实现 分布式节点通信 Client 端 Server 端 缓存击穿 复现 解决方案 测试 热点互备 思路 测试 缓存穿透 复现 解决方案 TODO 简介本...
  • 算法分类导航

    博客文章链接生成方式改变,之前的链接都失效。重新整理下,文章置顶作为导航页面,后续有新文章有更新也会同步更新该页面 LeetCode 类别 地址 链表 https://imlgw.top/2019/02/27/bef97aa3/ 数...
  • 图论:单源最短路的综合应用

    1135. 新年好重庆城里有 个车站, 条 双向 公路连接其中的某些车站。 每两个车站最多用一条公路连接,从任何一个车站出发都可以经过一条或者多条公路到达其他车站,但不同的路径需要花费的时间可能不同。 在一条路径上花费的时间等于路径上所有公路需要的...
  • Go runtime 调度

    Linux 进程 & 线程 在讲解详细的线程模型前,先整理一下概念 Linux 内核在 2.0.x 版本实现了轻量级进程(普遍意义上的线程),应用程序可以通过一个统一的clone()系统调用接口,用不同的flag参数指定创建轻量级进程(线程...
  • DP:状态机模型

    1049. 大盗阿福阿福是一名经验丰富的大盗。趁着月黑风高,阿福打算今晚洗劫一条街上的店铺。 这条街上一共有 N 家店铺,每家店中都有一些现金。 阿福事先调查得知,只有当他同时洗劫了两家相邻的店铺时,街上的报警系统才会启动,然后警察就会蜂拥而至。 作...
  • 断舍离

    前言最近笔记本抽风,经常莫名其妙启动不了主系统,每次关机都可能是永别。所以预先做好打算,万一真的有一天崩了方便自己重新配置环境。 这里主要列举一下自己在新系统上需要的一些工具,同时也是一次断舍离,希望在这篇文章上的软件越少越好。 2021.10.3...
  • 搜索:双向 BFS

    双向奔赴的 BFS 190. 字串变换已知有两个字串 及一组字串变换的规则(至多 6 个规则): … 规则的含义为:在 中的子串 可以变换为 、 可以变换为 … 例如:A=abcd B=xyz 变换规则为: abc → xu ud →...
  • 搜索:0-1BFS

    175. 电路维修达达是来自异世界的魔女,她在漫无目的地四处漂流的时候,遇到了善良的少女翰翰,从而被收留在地球上。 翰翰的家里有一辆飞行车。 有一天飞行车的电路板突然出现了故障,导致无法启动。 电路板的整体结构是一个行列的网格(),如下图所示。 每个...
  • 基础:前缀和&差分

    工作后好久没发新文章了,有些文章其实是很久之前就写完了,但是一直没发。最近搬家了,开始了新的生活,先慢慢找回之前的节奏,把坑都填完 796. 子矩阵的和(模板题)输入一个行列的整数矩阵,再输入个询问,每个询问包含四个整数 ,表示一个子矩阵的左上角...
  • LeetCode363. 矩形区域不超过 K 的最大数值和

    363. 矩形区域不超过 K 的最大数值和Difficulty: 困难 给你一个 m x n 的矩阵 matrix 和一个整数 k ,找出并返回矩阵内部矩形区域的不超过 k 的最大数值和。 题目数据保证总会存在一个数值和不超过 k 的矩形区域。 示例...
  • LeetCode87. 扰乱字符串

    87. 扰乱字符串Difficulty: 困难 使用下面描述的算法可以扰乱字符串 s 得到字符串 t : 如果字符串的长度为 1 ,算法停止 如果字符串的长度 > 1 ,执行下述步骤: 在一个随机下标处将字符串分割成两个非空的子字符串。...