一起答
主观

26. 已知有一个关键字序列为(99,38,309,08,27,145,67,96,186,122,71,63,59),假设用散列函数为h(key)=key%13,现在如果采用拉链法解决冲突问题,请画出这组关键字的散列表。

参考答案
查看试卷详情
相关试题
  1. 34. 写出向某个有序文件中插入一个记录的程序。

  2. 32. 以下算法在指针T所指的二叉排序树上的查找键值等于K的结点。成功时回送指向该结点的指针;否则回送空指针。请分析程序,并在______上填充合适的语句。

    bitreptr search_bst(bitreptr T,keytype K)

      {if(T==NULL)return(NULL);

         else switch

          { case T—>key==K:______;

            case______: return(search_bst(T—>lchild,K));

            case______: return(search_bst(T—>rchild,K));

           }

      }

  3. 33. 以下为顺序表的插入运算,分析算法,请在______处填上正确的语句。

    void insert_sqlist(sqlist L,datatype x,inti)/*将X插人到顺序表L的第i-1个位置*/

      {if(L.1ast==maxsize)error("表满");

      if((i<1)||(i>L.last+1))error("非法位置");

      for(j=L.last;j≥i;j--) ________;

      L.data[i-]=X;

      L.last=L.last+1;

      }

  4. 31. 以下运算实现在链栈上的初始化,请在______处用适当的语句予以填充。

    void InitStack(LStackTp*ls){______;)

  5. 29. 已知连通图如下:

    分别以邻接矩阵的邻接表实现存储,试给出该图的邻接矩阵和邻接表,若从顶点B出发对该图进行遍历,分别给出一个按深度优先搜索和广度优先搜索的顶点序列。

  6. 30. 以下运算实现在链队上的入队列,请在______处用适当的语句予以填充。

    void EnQueue(QueptrTp*lq,DataType x)

      {LqueueTp*P;

          p=(LqueueTp*)malloc(sizeof(LqueueTp));

          ______=x;

          p—>next=NULL;

          (1q—>rear)—>next=______;

          ______;

      }

  7. 28. 写出二分查找的递归算法。

  8. 27. 已知有一关键字序列为{486,79,596,34,900,120,789,179,703,307),如果我们采用基数排序方法对此序列进行排序(按照升序排列),请给出每一趟的排序结果。

  9. 26. 已知有一个关键字序列为(99,38,309,08,27,145,67,96,186,122,71,63,59),假设用散列函数为h(key)=key%13,现在如果采用拉链法解决冲突问题,请画出这组关键字的散列表。

  10. 24. 当所有结点的权值都相等时,用这些结点构造的二叉排序树上只有______。