niusouti.com

● 已知一个线性表(16, 25, 35, 43, 51, 62, 87, 93),采用散列函数H(Key)=Key mod 7将元素散列到表长为9的散列表中。若采用线性探测的开放定址法解决冲突(顺序地探查可用存储单元),则构造的哈希表为 (57) ,在该散列表上进行等概率成功查找的平均查找长度为 (58) (为确定记录在查找表中的位置,需和给定关键字值进行比较的次数的期望值称为查找算法在查找成功时的平均查找长度)。

题目

● 已知一个线性表(16, 25, 35, 43, 51, 62, 87, 93),采用散列函数H(Key)=Key mod 7将元素散列到表长为9的散列表中。若采用线性探测的开放定址法解决冲突(顺序地探查可用存储单元),则构造的哈希表为 (57) ,在该散列表上进行等概率成功查找的平均查找长度为 (58) (为确定记录在查找表中的位置,需和给定关键字值进行比较的次数的期望值称为查找算法在查找成功时的平均查找长度)。


相似考题
更多“ ● 已知一个线性表(16, 25, 35, 43, 51, 62, 87, 93),采用散列函数H(Key)=Key mod 7将元素散列到表长为9的散列表中。若采用线性探测的开放定址法解决冲突(顺序地探查可用存”相关问题
  • 第1题:

    若线性表(23,14,45,12,8,19,7)采用散列法进行存储和查找。设散列函数为 H(Key)=Key mod 7并采用线性探查法(顺序地探查可用存储单元)解决冲突,则构造的散列表为(38),其中,mod表示整除取余运算。

    A.

    B.

    C.

    D.


    正确答案:A
    解析:本题考查哈希存储方法。
      对于关键字23、14、45、12、8、19,由哈希函数得到的哈希地址没有冲突,元素直接存入,如下所示。 
     
      对于元素7,其哈希地址为0,但是该地址中已经存入元素14,因此由H1=(Hash(12)+1) mod 7=1,再试探哈希地址1,但该地址已被元素8占用,发生冲突;再计算H2=(Hash(12)+2) mod 7=2,发生冲突(地址2被元素23占用);再计算H3=(Hash(12)+3)mod 7=3,发生冲突;再试探哈希地址4,空闲,因此将元素7存入哈希地址为4的单元,如下所示。

  • 第2题:

    已知一个线性表(16,25,35,43,51,62,87,93),采用散列函数H(Key)=Key mod 7将元素散列到表长为9的散列表中。若采用线性探测的开放定址法解决冲突(顺序地探查可用存储单元),则在所构造的哈希散列表上进行等概率成功查找的平均查找长度为(60)(为确定记录在查找表中的位置,需和给定关键字值进行比较的次数的期望值,称为查找算法在查找成功时的平均查找长度)。

    A.(8×1)/8

    B.(8×1)/9

    C.(5×1+2+3+6)/8

    D.(5×1+2+3+6)/9


    正确答案:C
    解析:本题考查数据结构中哈希表的基础知识。线性探测法解决冲突的方法是:若在地址r处发生冲突,则探测地址 r+1,若已到达表尾,则再从表头出发进行探测。若是插入元素,则找到一个空闲单元为止。若表已满则采用其他策略解决冲突;若是访问元素,则找到元素或一个空闲单元为止。
      初始哈希表为空,根据序列(16,25,35,43,51,62,87,93)和哈希函数H(Key)=Key mod 7构造哈希表的过程如下。
      ①16 mod 7=2  25 mod 7=4  35 mod 7=0  43 mod 7=1,地址2、4、0、1空闲,所以插入对应元素。
      ②51 mod 7=2,地址2处冲突,因此探测地址3,该单元空闲,因此51存入地址3。由于62 mod 7=6,地址6处空闲,所以将62插入地址6。
      ③87 mod 7=3,地址3处冲突,因此依次探查地址4、5,地址5空闲,因此87存入地址5;93 mod 7=2,地址2处冲突,因此依次探查地址3、4、5、6、7,地址7空闲,因此93存入地址7。
      为确定记录在查找表中的位置,需和给定关键字值进行比较的次数的期望值称为查找算法在查找成功时的平均查找长度。对于含有n个记录的表,查找成功时的平均查找长度定义为:,其中,Pi为对表中第i个记录进行查找的概率,且,一般情况下,均认为查找每个记录的概率是相等的,即 Pi=1/n。Ci为找到表中其关键字与给定值相等的记录时(为第i个记录),和给定值已进行过比较的关键字个数。对于本试题所构造的哈希表,平均查找长度ASL=(1+1+1+1+2+1+3+6)/8=2。

  • 第3题:

    【Test-9-1-19】已知一个线性序列{38,25,74,63,52,48},假定采用散列函数h(key)=key%7计算散列地址,并散列存储在散列表A[10]中,若采用线性探测法解决冲突,且各元素的查找概率相等,则在该散列表上的查找不成功的平均查找长度为()。

    A.2.60

    B.3.14

    C.3.71

    D.4.33


    C.1.83

  • 第4题:

    有一个线性表(16,25,70,61,52,45),采用的散列函数为H(Key)=Keymod8,将元素散列到表长为8的哈希表中存储。若采用线性探测的开放定址法解决冲突,则在该散列表上进行等概率成功查找的平均查找长度为(88);若利用拉链法解决冲突,则在该散列表上进行等概率成功查找的平均查找长度为(89)。

    A.1.25

    B.1.33

    C.2

    D.2.3


    正确答案:B

  • 第5题:

    16、给定一个长度为7的空散列表ht,采用二次探查法解决冲突,散列函数为h(key)=key%7,请向散列表依次插入关键字为62,72,80的集合元素,插入完成后80在散列表中存储地址为_______(给出散列表位置下标)。


    5