HOME


人间如梦,倚笑乘风凉

外部排序

  时间复杂度 桶排序 n 计数排序 n 基数排序 $ d * (n + r) $ 这三...

单例模式

一、线程不安全 public class SampleOne { private static SampleOne instance; private SampleOne() {} public static SampleOne getInstance() { if (insta...

Redis基本数据结构的实现

简单动态字符串(SDS - Simple Dynamic String) 也就是我们常说的Redis中的String类型,它的数据结构为: struct sdshdr { // 标识当前字符串的实际长度 int len; // 标识剩余空间 int fre...

归并排序与快速排序

  最好 最坏 平均 是否原地算法? 是否稳定? 归并排序 \( nlogn \) \( nlogn \) \( nlogn...

容器基础知识

容器与进程 容器技术的核心功能,就是通过约束和修改进程的动态表现,从而为其创造出一个“边界”。容器,其实是一种特殊的进程而已。在使用Docker的时候,并没有一个真正的“Docker容器”运行在宿主机里面,Docker项目帮助用户启动的,还是原来的应用进程,只不过在创建这些进程时,Docker...

基于LinkedHashMap实现LRU

LRU(Least Recently Used)是内存管理中的一种页面置换算法,在工程中,也往往被用作缓存的淘汰算法,如在Redis中用来选择缓存中需要淘汰的值。 它的算法核心思想是: 写入、读取缓存时,该缓存都算作被访问一次 缓存被访问时,更新其访问时间 当缓存大小超过容量时...

简单排序算法

  最好 最坏 平均 是否原地算法? 是否稳定? 冒泡排序 \( n \) \( n^2 \) \( n^2 \) ...

Java启动选项

启动Java程序的时候,有两种命令格式: 1、java [options] classname [args] 2、java [options] -jar filename [args] 第一种命令是让程序从某个类的Main方法开始启动,第二种命令则是让程序以jar包形式启动。 ...