Algorithm Accumulate
tterminator
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
桶排序 【Java】
一、问题描述利用桶排序算法对整形数组排序。二、问题分析假设数组元素最大值和最小值分别为max和min,则桶的个数为max - min + 1,也即数组区间[min, max]每个元素和桶下标区间[0,max - min + 1]中每个元素一一对应,这也是桶排序的核心思想。(1)数组元素与桶下标对应关系元素arr[i]------>桶下标arr[i] - min例原创 2016-03-29 17:53:22 · 2157 阅读 · 3 评论 -
两正整数最大公约数
一、问题描述求两个正整数的最大公约数。二、问题分析假设有两个正整数x,y,则肯定有以下公式成立x = k * y + b,其中 b = x % y若x和y有最大公约数z,则z必定可以分别整除x和y,那么必有下式b = x - k * y可以被z整除。也即两个较大的数x和y的公约数问题,可以转换为两个较小的数x和b的公约数问题。三、算法代码public int原创 2016-03-18 23:17:22 · 2485 阅读 · 0 评论 -
Dijkstra算法失败
最近在实现Dijkstra算法时,算法在找最短路径的过程中竟然失败了,跟踪后定位到的原因是因为构建的图结构不是完全连通的,这里与大家分享下原创 2015-04-15 17:50:22 · 1064 阅读 · 0 评论 -
利用堆排序得到前K小元素
问题描述:在N个数中找到前K小的数(不是第K小),其中N>>K(N远大于K),并且N个数是逐渐生成的。由于N取值很大,所以不可能把N个值全部保存下来后再通过排序的方法解决,这样做缺点有:1、需要分配大量内存来保存这N个数2、只需要找到前K小,其它N-K个数没必要保存3、假如有很多组这样的N个数都需要找到前K小的数,则肯定会导致内存溢出所以把N个值全部保存下来后再通过排序原创 2015-04-07 11:12:43 · 1071 阅读 · 0 评论 -
哈希码(读书笔记)
哈希(hash)是一种数据摘要算法(或者称为散列算法),是信息安全领域中重要的理论基石。该算法将任意长度的输入经过散列运算转换成固定长度的输出。固定长度的输出可以称为对应输入内容的数字摘要或哈希值。比较著名的摘要算法有MD5和SHA1。SHA1摘要算法可以处理最多200万TB的输入数据,输出为固定的160bit的数字摘要。即使两个不同内容的输入数据量非常大、差异非常小,两者的哈希码也会原创 2014-12-23 12:51:44 · 774 阅读 · 0 评论 -
笔记:MD5
MD5是Message Disgest Algorithm第五版的缩写,其本质是一种散列函数。该算法能够为任意长度的数据算出长度固定的MD5值,并且该计算过程时间很快。此外,MD5算法非常敏感,对原始数据的任意改动,哪怕是一个字节,所得到的MD5值就会差异很大。MD5是一种不可逆的加密算法,不能通过MD5值反向计算出原信息内容。此外,若已知原数据和其MD5值,若要伪造一份数据使得伪造数原创 2016-04-01 17:29:20 · 844 阅读 · 0 评论 -
头插法创建&原地逆置单链表 【Java】
一、头插法创建&原地逆置单链表public class RotateList { public static void main(String[] args) { int [] values = new int[]{1,2,3,4}; Node head = constructList(values); printResult("链表创建后结构:原创 2016-04-23 18:19:02 · 2171 阅读 · 0 评论
分享