陈松的技术博客

阅读使人充实,会谈使人敏捷,写作使人精确

并查集之LeetCode959. 由斜杠划分区域

并查集

<hr style=” border:solid; width:100px; height:1px;” color=#000000 size=1”> 前言 算法之并查集 一,959. 由斜杠划分区域 在由 1 x 1 方格组成的 N x N 网格 grid 中,每个 1 x 1 方块由 /、\ 或空格构成。这些字符会将方块划分为一些共边的区域。 (请注意,反斜杠字符是转...

redis源码分析之bitops数据使用场景

缓存穿透,缓存击穿,缓存雪崩,统计数量汉明宽度

===================================================== redis源码学习系列文章: redis源码分析之sha1算法分析 redis源码分析之字典源码分析 redis源码分析之内存编码分析intset, ziplist编码分析 redis源码分析之跳跃表 redis源码分析之内存淘汰策略的原理分析 redis源码分析之对...

redis源码分析之集群之的槽的分配算法crc16原理分析

crc系列的算法,哈希算法

===================================================== redis源码学习系列文章: redis源码分析之sha1算法分析 redis源码分析之字典源码分析 redis源码分析之内存编码分析intset, ziplist编码分析 redis源码分析之跳跃表 redis源码分析之内存淘汰策略的原理分析 redis源码分析之对...

redis源码之sentinel高可用架构分析

分布式一致性Raft算法

===================================================== redis源码学习系列文章: redis源码分析之sha1算法分析 redis源码分析之字典源码分析 redis源码分析之内存编码分析intset, ziplist编码分析 redis源码分析之跳跃表 redis源码分析之内存淘汰策略的原理分析 redis源码分析之对...

初级排序算法分析

1,选择排序 2, 插入排序 3, 希尔排序 4, 归并排序 5, 快速排序 6, 堆排序

前言 正文 一, 选择排序 选择排序是排序中最简单的排序算法,它的操作是这样的: 首先找到数组中最小那个的元素,其次,将它和数组的第一个元素交换位置(如果第一个元素就是最小元素那么它就和自己交换)。再次,剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。如此往复,直到将整个数组排序。它在不断地选择剩余元素之中的最小者。 命题A: 对于长度为N的数组,选择排序需要大约(N...

STL源码之序列式容器list

双向链表,循环链表

前言 STL中list链表即双向链表又是循环链表 正文 一, STL源码之序列式容器list的节点和内置内存申请alloc节点的设计 1, 使用两个指针 父节点指针和下一个节点的指针 template <class T> struct __list_node { typedef void* void_pointer; void_pointer next; v...

STL源码之内存分配器alloc

内存池

前言 正文 一, C++中的对象new的流程 在C++中 new是调用::operator new (); //分配内存的 在调用赋值函数 construct(); 释放的流程 destroy() ::operator delete ; //释放内存 //初始化对象的值 template <class T1, class T2> inline...

STL源码解析模版

模版语法介绍

前言 正文 C++中模版语法解 1, 模版参数做特殊化设计 #include <iostream> template<class T, class O> class ctest_class { public: ctest_class() { std::cout << "I, O" << std::endl; } // s...

操作系统原理之物理内存管理之非连续内存分配

内存管理单元

前言 正文 一,非连续内存分配的需求背景 1, 连续分配的缺点 分配给程序的物理内存必须连续 存在外碎片和内碎片 内存分配的动态修改困难 内存利用率较低 2,非连续分配的设计目标: 提高内存利用效率和概率灵活性 允许一个程序的使用非连续的物理地址空间 允许共享代码与数据 支持动态加载和动态链接 3,非连续分配需要解决的问题 如何实现虚...

操作系统原理之计算机物理内存管理之连续内存分配

内存管理单元

前言 正文 一, 计算机体系结构和内存层次 1,计算机系统结构 计算机系统体系结构 2, 内存层次 3, 操作系统的内存管理方式 操作系统中采用的内存管理方式 重定位(relocation) 分段(segmentation) 分页(paging) 虚拟存储(virtual memeory) ...