已知带头结点的单链表中的关键字为整数,为提高查找效率,需将它改建为采用拉链法处理冲突的散列表。设散列表的长度为m,散列函数为Hash(key)=key%m。链表的结点结构为:。请在空缺处填入适当内容,使其成为一个完整算法。 void f33(Lin

admin2008-05-04  39

问题 已知带头结点的单链表中的关键字为整数,为提高查找效率,需将它改建为采用拉链法处理冲突的散列表。设散列表的长度为m,散列函数为Hash(key)=key%m。链表的结点结构为:。请在空缺处填入适当内容,使其成为一个完整算法。
   void f33(LinkList L,LinkList H[],int m)
   {//由带头结点的单链表L生成散列表H,散列表生成之后原链表不再存在
      int i,j;
      LinkList p,q;
      for(i=0;i<m;i++)
         H=[    (1)    ];
      p=L—>next;
      while(p)
      {
      q=p—>next
      j=p—>key%m;
      [    (2)   ];
      H[j]=p;
      [    (3)    ];
     }
     free(L);
   }

选项

答案1.NULL 2.p—>next=H[j] 3.p=q

解析
转载请注明原文地址:https://jikaoti.com/ti/ThtaFFFM
本试题收录于: 数据结构题库理工类分类
0

最新回复(0)