跳表结构基础实现
从零实现一个跳表。 ...
从零实现一个跳表。 ...
了解LRU工业级实现,以MySQL、Redis为例。 ...
从零实现一个LRU,同时优化我们的版本。 ...
从零实现一个最简单的特里树,同时了解特里树的使用场景。 ...
LeetCode 153. 寻找旋转排序数组中的最小值 二分题解,重新认识二分。 ...
从零实现一个最小堆,同时了解堆结构的使用场景。 ...
从零实现并查集,并逐步优化各版本中的问题。 ...
LeetCode 46. 全排列 DFS题解,理解DFS、回溯、递归树。 ...
LeetCode 206. 反转链表题解,借用本题与关联题目,加强对递归的理解。 ...
解读编程技巧中的sentinel value、哨兵。 ...
LeetCode 142. 环形链表 II 题解,寻找链表环入口。 ...
MySQL性能优化cheatsheet。 ...
设计模式是前辈们针对实际编码中各种问题对应解决方案的抽象总结,是一种最佳实践。因此值得每一位工程师学习借鉴。 使用的时候重点是识别面临的问题的场景,识破问题关键,挑选适当的模式进行编码。 识别这一步最为关键。 ...
软件编程有多年工业界实践的经验沉淀,这些原则、法则是指导我们设计、编码的方法论。本文只针对OOD。 ...
Latency numbers every programmer should know. ...
很多技术概念都是对现实的映射、类比、模拟。 ...
作为RD,除了搞好技术方案、实现,也要搞好项目管理。 大部分的任务推进都是以项目为维度的,而其中的项目管理对于结果成功至关重要。 如何做好DPM(Developer Project Manager)?我认为首先要有owner心态,即我是这个项目的负责人心态,其次是要有owner配套的方法论、能力。 ...
Jay Kreps (Confluent CEO,Kafka 核心作者) 在《The Log: What every software engineer should know about real-time data’s unifying abstraction》中系统性描述了日志的价值和重要性,指出了日志特定的应用目标:它记录了什么时间发生了什么事情(they record what happened and when)。而这,正是分布式系统许多问题的核心。 ...
解答:ES为什么建议使用32或者26GB的堆?并且了解JVM中的指针压缩设计。 ...
踩坑MySQL主从延迟背景下,流程业务卡住无法流转,问题得以暴露。 ...