算法共9篇

BloomFilter(布隆过滤器)学习笔记

看到一个集合查找的面试题,想起这个算法。 前言 一个面试题 现在有一个非常庞大的数据,假设全是 int 类型。现在我给你一个数,你需要告诉我它是否存在其中(尽量高效)。 如果int是32位或以下,...
sean的头像 | x64sean3年前
02860
使用与运算优化对2^n数的取模 | x64

使用与运算优化对2^n数的取模

适用场景:对2的幂进行取模。 代码 这是一个来自coolshell的代码 代码本身很简单,就是遍历一个整型数组,每16个值自增1,当遍历到最后一个值,就重头开始。因为要从头开始,所以在遍历的循环中...
sean的头像 | x64sean5个月前
01088

Linux I/O 调度层总结

I/O调度算法,也称I/O调度策略。 前言 现代计算机体系中,硬盘是数据存储的持久化介质,硬盘的访问速度相比内存存在数量级的差距,因此有效的调度能更好利用资源,优化响应。 和CPU调度算法相似...
sean的头像 | x64sean2年前
0690

燃烧木棍确定时间的面试题

微博上看到的一道面试题,思维类的题目。 题目 一屋子的长短粗细不同密度不均的木棍儿,每根烧完都恰好需要1个小时。你有打火机,让你在屋子里想办法45分钟后准时出来,该怎么办。 点击查看答案 ...
sean的头像 | x64sean3年前
0380

一个看上去是bug却是正确插入排序变种

看到一个有意思的排序算法,一开始看上去像是冒泡排序写错了。但实际上却是正确的排序算法,做个分析。文章链接 本质上是一个插入排序算法 算法 算法介绍 未知排序算法 不知道这个什么语言,但...
sean的头像 | x64sean3年前
0340

微软编程之美2014初赛第一场解题报告

题目1 : 焦距 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 一般来说,我们采用针孔相机模型,也就是认为它用到的是小孔成像原理。 在相机坐标系下,一般来说,我们用到的单位长度,不...
sean的头像 | x64sean5个月前
0179
使用坐标系分析Paxos算法 | x64

使用坐标系分析Paxos算法

本文并非使用流程图和案例分析,而是通过提案序列和时间序列组成的坐标系来分析Paxos。 希望能为你带来更直观的感受,使Paxos算法更加易懂。
sean的头像 | x64sean3年前
0170

Paxos算法的数学归纳法证明

本文是对Paxos算法的理解。原理和一些问题的思考
sean的头像 | x64sean3年前
0160

单向链表翻转实现

链表管理会用到指针,指针是非常灵活的数据结构,但也容易掉坑里。 翻转链表,主要是要考虑好它的结构。可以画图来帮助思考。然后就是注意一些变量的变化。 #include <string> #include &...
sean的头像 | x64sean2年前
040