排序
试试手气 使用与运算优化对2^n数的取模
适用场景:对2的幂进行取模。 代码 这是一个来自coolshell的代码 代码本身很简单,就是遍历一个整型数组,每16个值自增1,当遍历到最后一个值,就重头开始。因为要从头开始,所以在遍历的循环中...
BloomFilter(布隆过滤器)学习笔记
看到一个集合查找的面试题,想起这个算法。 前言 一个面试题 现在有一个非常庞大的数据,假设全是 int 类型。现在我给你一个数,你需要告诉我它是否存在其中(尽量高效)。 如果int是32位或以下,...
利用二级指针删除单向链表——笔记
今天看到这篇Linus:利用二级指针删除单向链表,作个笔记。 关于在单向链表中删除一个指定的节点,通常有两个易错点。 找到指定节点删除时,忘了备份这个节点里指向下一个节点的指针。 没有特殊...
一个看上去是bug却是正确插入排序变种
看到一个有意思的排序算法,一开始看上去像是冒泡排序写错了。但实际上却是正确的排序算法,做个分析。文章链接 本质上是一个插入排序算法 算法 算法介绍 未知排序算法 不知道这个什么语言,但...
Golang 代码拾遗
摘要 本文主要记录golang的常用代码片段和特殊的代码写法。 内容 var _ 检测接口中的方法是否被定义 可以在结构体未被使用前,让编译器检查其是否实现了接口所需的所有方法。 代码 // 检查 Noki...
几个Git使用技巧
Git免密登录 Http的免密登录 git使用http地址时,需要输入账号密码的。如果把配置于存到本地文件,因为store是明文存放,所以容易造成密码泄露。 可以执行以下命令,把凭证超时时间设置的很久。...
Go语言的可变长参数函数
一般情况一个函数的传入参数都是固定的,但是有一些函数能传入不定数量的参数(可变长的)。比如c语言中的printf。可以看:《C语言“…”占位符及可变参数函数》 在Go语言中,也有这样的函数。...