网页区块(Blocks)中表示,比特币挖掘过程实际上是在解决数学问题,但再阅读Block hashing algorithm这篇文章感觉还是不太理解没。也想尝试阅读bitcoind源代码...
本分摘录翻译自wikipedia Viterbi algorithm。
维特比算法(Viterbi algorithm)是一种动态规划算法,它用于寻找最可能产生观测到的事件的序列,这个序列是隐...
第 一次听说google的simhash算法[1]时,我感到很神奇。传统的hash算法只负责将原始内容尽量均匀随机地映射为一个签名值,原理上相当于伪 随...
KMP算法是一种线性时间复杂的字符串匹配算法,它是对BF算法(Brute-Force,最基本的字符串匹配算法的)改进。
对于给的的原始串S和模式串P,需要从字符串S...
单链表的快速排序和数组的快速排序在基本细想上是一致的,以从小到大来排序单链表为例,
都是选择一个支点,然后把小于支点的元素放到左边,把大于支点的...
求数组中第K大的数可以基于快排序思想,步骤如下:
1.随机选择一个支点
2.将比支点大的数,放到数组左边;将比支点小的数放到数组右边;将支点放到中间...
摘要:本文简要介绍了当数据量大到不适合在内存中排序时,利用磁盘进行排序的多路归并算法。
关键字:外排序,磁盘排序,多路归并
下面以一个包含很多...
摘要:本文简要介绍了采用贪心策略的最小生成的生成算法——Prim算法。文中首先给出了一个易于理解
的O(N^3)的实现,然后给出了优化后的O(N^2)实现,也就是...
摘要:本文简要介绍了top-k(求一个序列中前K个最大或最小的元素)算法的二分实现方法,并给出了C++源
代码
关键字:top-k,二分,快排序
网上介绍to...
问题描述:给定两个正整数A,B(A和B可能超出计算机中国INT32,INT64的范围,高达几百甚至上千位),
求A和B相乘的积。
解决方案:
用计算机模拟手算的...
摘要:本文简要介绍了拓扑排序算法的原理,并给出了基于邻接矩阵实现的拓扑排序c++源码
关键字:拓扑排序,topological sort,AOV网络
最近在论坛上看...
题目比较简单,但是这里采用的一次遍历方法还是比较通用的。
设:
arr: 数组, size=N
i:记录上一次放置偶数的下一个位置, 初始i=0
j : 当前遍历...
问题描述:将一个正整数表示为两个或这个两个以上的连续自然数的和。给定一个数,输出所有的可能的结果。
例如:
3=1+2;
9=4+5;
9=2+3+4;
解决方法:
对...
摘要:关于快排序的各种版本的代码已经有很多了,这里简要介绍一种堪称经典的写法
关键词:quicksort 快排序 快排序的经典写法 最短快...
摘要:本文简要介绍了使用堆实现求序列中最大的K个元素的算法,并提供了C++源码
关键字:top-k,二叉堆,数组堆
本算法的具体思想为建立一个大小为K的...