【单选题】设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造散列表,散列函数为H(key)=key % 13,散列地址为1的链中有()个记录。A.1B.2C.3D.4

题目

【单选题】设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造散列表,散列函数为H(key)=key % 13,散列地址为1的链中有()个记录。

A.1

B.2

C.3

D.4


相似考题
参考答案和解析
8,8
更多“【单选题】设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造散列表,散列函数为H(key)=key % 13,散列地址为1的链中有()个记录。”相关问题
  • 第1题:

    分别写出在散列表中插入和删除关键字为K的一个记录的算法,设散列函数为H,解决冲突的方法为链地址法。


    参考答案:
      [算法描述]
      bool insert(){
      int data;
      cin>>data;
      int ant=hash(data);
      LinkList p=HT[ant]; //初始化散列表
      while (p->next){
      if(p->next->data==data)
      return false;
      p=p->next;
      } //找到插入位置
      LinkList s;
      s=new LNode;
      s->data=data;
      s->next=p->next;
      p->next=s; //插入该结点
      return true;
      }
      bool deletes(){
      int data;
      cin>>data;
      int ant=hash(data);
      LinkList p=HT[ant]; //初始化散列表
      while (p->next){
      if(p->next->data==data){
      LinkList s=p->next;
      p->next=s->next;
      delete s; //删除该结点
      return true;
      } //找到删除位置
      p=p->next; //遍历下一个结点
      }
      return false;
      }

  • 第2题:

    设哈希表地址范围为0~19,哈希函数H(key)=key%17,使用二次探测再散列法处理冲突。若表中已存放有关键字值为 6、22、38、55的记录,则再放入关键字值为72的记录时,其存放地址应为()。

    A、2

    B、3

    C、4

    D、7

    E、8

    F、以上都不对


    正确答案:D

  • 第3题:

    若线性表(24,13,31,6,15,18,8)采用散列(Hash)法进行存储和查找,设散列函数为H(Key)=Key mod 11,则构造散列表时发生冲突的元素为(1) (其中的mod表示整除取余运算)。

    A.24和13

    B.6和15

    C.6和24

    D.18和8


    正确答案:A
    解析:本题考查数据结构基础知识。构造散列表时,若关键字k1≠k2,而H(k1)=H(k2),即关键字不同的元素被映射到同一个散列地址,称发生了冲突,称k1和k2互为同义词。根据题中给出的散列函数H(Key)=Key mod 11,H(24)=2,H(13)=2,H(31)=9,H(6)=6,H(15)=4,H(18)=7,H(8)=8,则发生冲突的元素为24和13。

  • 第4题:

    设散列表的存储空间大小为19,所用散列函数为h(key)=key mod 19,用开放地址线性探查法解决碰撞。散列表的当前状态如下: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 190 194 768 559 582 93 208 现要将关键码值75插入到该散列表中,其地址应为______。

    A.1

    B.11

    C.5

    D.15


    正确答案:A

  • 第5题:

    对于关键码序列(54,34,5,14,50,36,47,83),用链地址法(或拉链法)解决冲突构造散列表(即将冲突的元素存储在同一个单链表中,单链表的头指针存入散列地址对应的单元),设散列函数为H(Key)=Key MOD 7(MOD表示整除取余运算),则构造散列表时冲突次数最多的哈希单元的地址是( )。

    A.0 B.1 C.5 D.6


    正确答案:C

  • 第6题:

    假定用散列函数H1=k mod 13计算散列地址,当发生冲突时,用散列函数 H2=k mod 11+1来计算下一个探测地址的地址增量。设散列表的地址空间为0~12,在地址2、3、8中,散列表相应的内容为80,85,34。下一个被插入的关键码是42,其插入的位置是【 】。


    正确答案:×
    0 解析:H1=42 mod 13=3,地址3中已分配给85,所以计算H2,H2=42 mod 11+1=10,这是地址增量。下一个探测地址应为3+10=13,13 mod 13=0,0地址为空,故42可插入在该地址中。

  • 第7题:

    ●设线性表(59,53,46,48,37,31,25)采用散列(Hash)法进行存储和查找,散列函数为H(Key)=Key

    MOD 7(MOD表示整除取余运算)。若用链地址法解决冲突(即将相互冲突的元素存储在同一个单链

    表中)构造散列表,则散列表中与哈希地址 (37) 对应的单链表最长。

    (37)

    A.2

    B.3

    C.4

    D.6


    正确答案:C

  • 第8题:

    若关键码序列(47,61,55,39,10,26,90,82)采用散列法进行存储和查找。设散列函数为H(Key)=Key mod 11(mod表示整除取余运算),拟采用链地址法(拉链法)解决冲突构造散列表。以下关于该散列表的叙述中,正确的是( )。

    A.关键码10和90位于同一个链中
    B.关键码61和82位于同一个链中
    C.关键码61和39位于同一个链中
    D.关键码47、55和39位于同一个链中

    答案:C
    解析:
    散列函数为H(Key)=KeyMOD11(MOD表示整除取余运算),因此只需要对线性表类数据分别与11进行取余运算。分别将关键码序列和11进行取余运算,得到{3,6,0,6,10,4,2,5},可以看出关键码61和39的值是相同的,因此其位于同一个链中。

  • 第9题:

    设哈希(散列)表表长为15(哈希地址为0~14),哈希函数为H(key)=key%11,冲突处理采用线性探测Hi=(H(key)+1)%11,则将一列数15,20,26,30,35,40存储该哈希表,元素40的哈希地址为()


    正确答案:7

  • 第10题:

    若采用链地址法构造散列表,散列函数为H(key)=key MOD 17,则需()个链表。

    • A、17
    • B、13
    • C、16
    • D、任意

    正确答案:A

  • 第11题:

    问答题
    设关键字序列为(71,12,88,53,11,25,65,27,16),散列函数为H(key)= key % 7,采用链地址法解决冲突。请回答:查找关键字88时,需要依次与哪些关键字比较。

    正确答案: 查找关键字88时,分别与25,11,53,88比较。
    解析: 暂无解析

  • 第12题:

    填空题
    设哈希(散列)表表长为15(哈希地址为0~14),哈希函数为H(key)=key%11,冲突处理采用线性探测Hi=(H(key)+1)%11,则将一列数15,20,26,30,35,40存储该哈希表,元素40的哈希地址为()

    正确答案: 7
    解析: 暂无解析

  • 第13题:

    设散列地址空间为0~m-1,key为关键字,用p去除key,将得到的余数作为key的散列地址,即h(key)=key%p。为了减少发生冲突的频率,一般取p为()。

    A小于等于m的最大奇数

    B小于等于m的最大偶数

    C小于等于m的最大素数

    D小于等于m的最大合数


    正确答案:C

  • 第14题:

    设散列函数H(key)=key MOD 7,用线性探测再散列法解决冲突。对关键字序列{13,28,72,5,16,8,7,9,11,29}在地址空间为0-10的散列区中建散列表,画出此表,并求等概率情况下查找成功时的平均查找长度。


    参考答案:

  • 第15题:

    设线性表(59,53,46,48,37,31,25)采用散列(Hash)法进行存储和查找,散列函数为H(Key)=Key MOD 7(MOD表示整除取余运算)。若用链地址法解决冲突(即将相互冲突的元素存储在同一个单链表中)构造散列表,则散列表中与哈希地址 (38) 对应的单链表最长。

    A.2

    B.3

    C.4

    D.6


    正确答案:C
    53,48,25对应的地址都为4.

  • 第16题:

    设哈希表长m=14,哈希函数H(key)=key%ll,表中已经有4个结点: addr(13)=4; addr(28)=5 addr(51)=6; addr(77)=7 如果用线性探测再与散列法处理冲突,关键字为49的结点地址为( )。

    A.8

    B.5

    C.9

    D.3


    正确答案:A

  • 第17题:

    若关键码序列(23,35,14,49,8,12,30,7)采用散列法进行存储和查找。设散列函数为H(Key)=Key%11,采用线性探查法(顺序地探查可用存储单元)解决冲突,尚未构造完成的散列表如下所示,则元素12应存入哈希地址单位()

    A.0

    B.4

    C.11

    D.12


    正确答案:B
    本题考查数据结构基础知识。根据构造哈希表的方式,先由哈希函数计算12在哈希表中的存储位置为1(12%11),此时因1号单元被23占用而发生冲突,线性探查法解决冲突的方式是顺序地探查2号单元,仍然冲突,再探查3号单元,继续冲突,再探查4号单元,不再冲突,从而在经过4次探查后把12存入空闲的4号单元。

  • 第18题:

    ● 若线性表(24, 13, 31, 6, 15, 18, 8)采用散列(Hash)法进行存储和查找,设散列函数为H(Key)=Key mod 11,则构造散列表时发生冲突的元素为 (1) 。(其中的mod表示整除取余运算)

    (1)

    A. 24和13

    B. 6 和15

    C. 6 和24

    D. 18和8


    正确答案:A

  • 第19题:

    ●若采用链地址法对关键字序列(74,10,23,6,45,38,18)构造哈希表(或散列表),设散列函数为H(Key)=Key % 7(%表示整除取余运算),则哈希表中地址为(42)的单链表长度为0(即没有关键字被映射到这些哈希地址)。

    (42) A. 0、1和2

    B.1、2和3

    C.1、3和5

    D.0、1和5


    正确答案:D

  • 第20题:

    设有一组记录的关键字为{19,14,23,1,68,20,84,27,55,11,10,79},用链地址法构造散列表,散列函数为H(key)=keyMOD13,散列地址为1的链中有()个记录。

    A.1
    B.2
    C.3
    D.4

    答案:D
    解析:
    由散列函数H(key)=keyMOD13计算每个记录的散列地址,散列地址为1的关键字有14,1,27,79,共4个记录。

  • 第21题:

    设关键字序列为(71,12,88,53,11,25,65,27,16),散列函数为H(key)= key % 7,采用链地址法解决冲突。请回答:查找关键字88时,需要依次与哪些关键字比较。


    正确答案:查找关键字88时,分别与25,11,53,88比较。

  • 第22题:

    设关键字序列为(71,12,88,53,11,25,65,27,16),散列函数为H(key)= key % 7,采用链地址法解决冲突。请回答:请求等概率下查找成功的平均查找长度ASL


    正确答案:ASL成功=(1*5+2*2+3*1+4*1)=16/9

  • 第23题:

    单选题
    若采用链地址法构造散列表,散列函数为H(key)=key MOD 17,则需()个链表。
    A

    17

    B

    13

    C

    16

    D

    任意


    正确答案: C
    解析: 暂无解析

  • 第24题:

    问答题
    设关键字序列为(71,12,88,53,11,25,65,27,16),散列函数为H(key)= key % 7,采用链地址法解决冲突。请回答:请求等概率下查找成功的平均查找长度ASL

    正确答案: ASL成功=(1*5+2*2+3*1+4*1)=16/9
    解析: 暂无解析