《第五章》 散 列
散列表的实现常常叫做散列(hashing)。散列是一种用于以常数平均时间执行插入、删除和查找的技术。
关于散列有一个很重要的概念:散列函数。散列函数是散列的关键处之一,散列函数又是基于映射机制的一种对应关系(一般是多对一的关系)。
这章可以分为5个部分:一般想法,散列函数,分离链接法,开放定址法(可分为线性探测、平方探测、双散列)、再散列、可扩散列。
本...
分类:
其他好文 时间:
2015-03-30 14:38:42
阅读次数:
224
虽然前面整理了相对MD5更安全的SHA散列算法,但有时MD5还是有他的需求的,所以也整理备份下。
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Utils {
/**
* md5加密方法
* @param password
*...
分类:
编程语言 时间:
2015-03-29 09:29:10
阅读次数:
142
上代码:
package com.itany.quadraticprobing;
import java.util.LinkedList;
import java.util.List;
//使用平方探测的散列表 来解决散列时的冲突问题
public class QuadraticProbingHashTable
{
private static final int DEFAULT_...
分类:
其他好文 时间:
2015-03-19 22:04:18
阅读次数:
4747
一个菜单中包括多个菜单项(MenuItem),在一个菜单中最多只会显示两行散列的菜单项,如果菜单项超过了六个,超过的会自动隐藏,会出现更多提示用户
在android中菜单一共分为三种:选项菜单(OptionsMenu)、上下文菜单(ContextMenu)、和子菜单(SubMenu).
一:选项菜单
这个暂时不需要配置文件
只需在Activity中进行完成
packa...
分类:
移动开发 时间:
2015-03-19 18:26:32
阅读次数:
265
散列表的实现常常叫做散列。散列是一种用以常数平均时间执行插入,删除,和查找的技术。但是那些需要元素信息排序的树操作不会得到支持。因此例如findMax,findMin以及排序后遍历这些操作都是散列不支持的。
如果当一个元素被插入时与已经插入的元素散列(比如散列表的数组序号,很多元素插入到同一个数组序号中),那么就会产生一个冲突,这个冲突需要消除。解决冲突的办法有两种:
1 分离链接法...
分类:
其他好文 时间:
2015-03-19 14:55:07
阅读次数:
227
一、Session机制
session机制采用的是在服务器端保持 HTTP 状态信息的方案 。
服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。
当程序需要为某个客户端的请求创建一个session时,服务器首先检查这个客户端的请求里是否包含了一个session标识(即sessionId),如果已经包含一个sessionId则说明以前已经为此客户创建过session,服务器...
分类:
编程语言 时间:
2015-03-19 11:33:00
阅读次数:
168
哈希表,又名散列表,hashtable。。。云云,看似很高大上,其实不过是直接寻址的延伸而已。直接寻址为何物,看一个数组:a[10],那么取其中一个元素a[1],这就是直接寻址,直接去这个a+1的地址上,就找到了这个数值,时间复杂度为O(1)。而哈希表的目的就是要让查找的时间复杂度尽量往O(1)上靠。...
分类:
编程语言 时间:
2015-03-18 23:24:21
阅读次数:
287
登录与注册的加密算法分析算法目的
提供固定的 秘钥 和 明文 能够产生不同的密文摘要
hamc 算法 大概流程是 使用一个秘钥 对明文进行两次散列操作得到密文摘要
哈希(散列)函数
MD5
SHA1
SHA256
注册
向服务器请求一个随机的秘钥
把注册的密码进行 md5.hmac(hamc使用md5的散列函数来操作字符)加密 : md5.hmac(key,message) ==> 密文摘要(k...
分类:
编程语言 时间:
2015-03-17 22:01:53
阅读次数:
192
hashlib是涉及安全散列和消息摘要,提供多个不同的加密算法借口,如SHA1、SHA224、SHA256、SHA384、SHA512、MD5等。import hashlibm = hashlib.md5() #创建hash对象,md5:(message-Digest Algorithm 5)消.....
分类:
编程语言 时间:
2015-03-16 21:07:54
阅读次数:
206
要点哈希表和哈希函数在记录的存储位置和它的关键字之间是建立一个确定的对应关系(映射函数),使每个关键字和一个存储位置能唯一对应。这个映射函数称为哈希函数,根据这个原则建立的表称为哈希表(Hash Table),也叫散列表。以上描述,如果通过数学形式来描述就是:若查找关键字为 key,则其值存放在 f...
分类:
其他好文 时间:
2015-03-16 16:04:39
阅读次数:
230