
高级数据结构和算法
这里讲解树、图、以及一些常用的重要算法等。
"爱"编程的小朋友
未来可期
展开
-
【算法】哈希算法——murmurhash一致性哈希算法
Murmurhash: 是一种非加密型哈希函数,适用于一般的哈希检索操作。高运算性能,低碰撞率,由Austin Appleby创建于2008年,现已应用到Hadoop、libstdc++、nginx、libmemcached等开源系统。2011年Appleby被Google雇佣,随后Google推出其变种的CityHash算法。一致性哈希算法的主要步骤:首先求出缓存服务器结...原创 2019-05-11 17:32:51 · 5637 阅读 · 0 评论 -
【算法】排序算法详解总结
目录一、详解8种排序算法:1.直接插入排序:2.希尔排序:3.冒泡排序:4.快速排序5.简单选择排序6.堆排序:7.归并排序8.桶排序又称基数排序一、详解8种排序算法: 插入排序:1.直接插入排序 2.希尔排序 交换排序:3.冒泡排序 4.快速排序 选择排序:5.简单选择排序 6.堆排序 归...原创 2019-01-21 13:21:21 · 468 阅读 · 0 评论 -
【算法】递归和分治策略
分治策略在我们的排序算法中的快速排序、归并以及二分查找中经常用到,本文就来探讨一下分治策略。当然,与分治策略密不可分的还有我们经常用到的递归。目录一、递归基础二、分治策略基础三、来看几个递归分治的例子 1、快速排序2、求第K大(小)/最小(大)的K个数3、最接近点对问题一、递归基础一个直接或间接的调用自身的算法称为递归算法。递归的使用会让我们对...原创 2019-07-27 17:58:34 · 477 阅读 · 0 评论 -
【算法】页面置换算法FIFO、LRU和LFU的概述以及实现方式
页面置换算法,我们最常用的页面置换算法包括FIFO先来先服务,LRU最近最久未被使用,LFU最近最少被使用以及我们的时钟置换算法。一、FIFO算法——先来先服务1、简述FIFO算法FIFO算法是我们比较简单的置换算法,就是先来先服务或者说是先进先出。也就是说在进行页面置换的时候,最先来的那个会被最先置换出去。先进入的指令先完成并引退,跟着才执行第二条指令。2、FIFO算法的简单...原创 2019-08-27 15:03:13 · 15285 阅读 · 1 评论 -
【数据结构】——BST二叉搜索树
BST树——二叉平衡/搜索树它的特点是:左孩子的值 < 根的值;根的值 < 右孩子的值; 所有关键码的结点都不相同; 左右子树也都是二叉搜索树; 并且BST树不一定是一棵完全二叉树。对这样一棵二叉搜索树,进行中序遍历,可以按从小到大的顺序将各节点关键码排列起来,所以也称二叉搜索树为二叉排序树。1、定义二叉搜索树的结构结点结构:typedef int Ke...原创 2019-08-30 00:27:34 · 417 阅读 · 0 评论