查找(二)散列表散列表是普通数组概念的推广。因为对普通数组能够直接寻址,使得能在O(1)时间内訪问数组中的任何位置。在散列表中,不是直接把keyword作为数组的下标,而是依据keyword计算出对应的下标。使用散列的查找算法分为两步。第一步是用散列函数将被查找的键转化为数组的一个索引。我们须要面对...
分类:
其他好文 时间:
2014-06-29 00:46:22
阅读次数:
548
1单向散列加密
单向散列加密是指通过对不同输入长度的信息进行散列计算,得到固定长度的输出,这个散列计算过程是单向的,不可逆的。常用的单向散列算法有MD5,SHA等。
比如网站中,用户密码,一般可以进行MD5加密后保存,用户登录时,对用户输出的密码进行加密后和数据库密文进行比较,如果一致,则验证成功。
为了加强计算的安全性,可以对数据加上密钥,增加破解...
分类:
其他好文 时间:
2014-06-24 15:26:40
阅读次数:
296
明文保存密码的程序在很多方面容易造成密码的泄漏。虽然用户输入的密码一般时明文形式,但是应用程序必须保证密码不是以明文形式存储的。
限制密码泄漏危险的一个有效的方法是使用散列函数,它使得程序中可以间接的对用户输入的密码和原来的密码进行比较,而不需要保存明文或者对密码进行解密后比较。这个方法使密码泄漏的风险降到最低,同时没有引入其他缺点。
[加密散列函数]
散列函数产...
分类:
编程语言 时间:
2014-06-22 12:13:45
阅读次数:
251
散列表的实现常常叫做散列(hashing)。散列仅支持INSERT,SEARCH和DELETE操作,都是在常数平均时间执行的。需要元素间任何排序信息的操作将不会得到有效的支持。散列表是普通数组概念的推广。如果空间允许,可以提供一个数组,为每个可能的关键字保留一个位置,就可以运用直接寻址技术。当实际存...
分类:
编程语言 时间:
2014-06-22 10:55:33
阅读次数:
302
http://blog.csdn.net/czh0766/article/details/5260360昨天看了算法导论对散列表的介绍,今天看了一下Hashtable, HashMap这两个类的源代码,并参考了网上的一些观点,对它们的实现有了大概的理解。原来hashtable里的key-value还...
分类:
其他好文 时间:
2014-06-21 00:38:48
阅读次数:
379
HighCharts摘要HighCharts是眼下最为流行的图表插件,应用范围广泛,眼下支持曲线图、区域图、3D图、柱状图、饼图、散列图、混合图等,而且还支持一些拓展的特殊图表,如:仪表图、极地图、箱线图、瀑布图等。因工作中用到,所以在这里我仅仅做最主要的配置使用。官方站点:www.highchar...
分类:
其他好文 时间:
2014-06-18 22:42:34
阅读次数:
640
从OpenSSL之安全通讯基础中了解到对称加密,非对称加密,散列函数以及数字签名,CA等技术。那有没有一种框架结合了各种技术来共同完成整个安全通讯呢?这种框架就称为PKI。PKI技术与安全服务公钥基础设施(PublicKeyInfrastructure,简称PKI)是一种遵循标准的,采用非对称密码算..
分类:
其他好文 时间:
2014-06-16 15:14:52
阅读次数:
557
基本功差的勿看! java 散列与散列码探讨 ,简单HashMap实现散列映射表执行各种操作示列...
分类:
编程语言 时间:
2014-06-15 14:13:25
阅读次数:
247
1. trie树,又名字典树,顾名思义,它是可以用来作字符串查找的数据结构,它的查找效率比散列表还要高。
trie树的建树:
比如有字符串”ab” ,“adb”,“adc” 可以建立字典树如图:
树的根节点head不存储信息,它有26个next指针,分别对应着字符a,b,c等。插入字符串ab时,next[‘a’-‘a’]即next[0]为空,这...
分类:
其他好文 时间:
2014-06-14 14:25:50
阅读次数:
406
MD5(单向散列算法)的全称是Message-Digest Algorithm
5(信息-摘要算法),经MD2、MD3和MD4发展而来。MD5算法的使用不需要支付任何版权费用。MD5功能l
输入任意长度的信息,经过处理,输出为128位的信息(数字指纹);l 不同的输入得到的不同的结果(唯一性);l ...
分类:
其他好文 时间:
2014-06-09 22:50:54
阅读次数:
284