设散列函数为H(key)=key%7,散列地址空间为0到6,用线性探查法处理冲突,请画出依次
问题描述:
设散列函数为H(key)=key%7,散列地址空间为0到6,用线性探查法处理冲突,请画出依次
输入关键字序列{46,21,7,62,34,10}
答
由散列函数计算出的上述关键字序列的散列地址为(4,0,0,6,6,3).
前2个关键字插入时,其相应的地址均为开放地址,故将它们直接插入T[4],T[0],当插入第3个关键字时,其散列地址0已被第2个关键字占用.故探查h1=(0+1)%7=1,此地址开放,所以将7放入T[1]中.
当插入第5个关键字34时,其散列地址6已被非同义词62先占用,故探查h1=(6+1)%7=0,其散列地址0已被第2个关键字占用,故探查h2=(6+2)%7=1,其散列地址1已被第3个关键字占用,故探查h3=(6+3)%7=2,将其插入到T[2]中.
所以哈希表为
0 1 2 3 4 5 6
21 7 34 10 46 62