问答题 [说明]
散列文件的存储单位称为桶(Bucket)。假如一个桶能存放m个记录,当桶中已有m个同义词(散列函数值相同)的记录时,存放第m+1个同义词会发生“溢出”。此时需要将第m+1个同义词存放到另一个称为“溢出桶”的桶中。相对地,称存放前m个同义词的桶为“基桶”。溢出桶和基桶大小相同,用指针链接。查找指定元素记录时,首先在基桶中查找。若找到,则成功返回;否则沿指针到溢出桶中进行查找。
例如,设散列函数为Hash(Key)=Key mod 7,记录的关键字序列为15,14,21,87,96,293,35,24,149,19,63,16,103,77,5,153,145,356,51,68,705,453,建立的散列文件内容如下图所示。
【正确答案】
【答案解析】Index=NewElemKey%P或Index=Hash(NewElemKey)
i<ITEMS
front=&Bucket[index]或front=Bucket+Index
k==ITEMS或k>=ITEMS
t==NULL
front→Link=s