左式堆的deletdMin例程

来源:互联网 发布:淘宝客服工作总结100字 编辑:程序博客网 时间:2024/06/06 01:57

《数据结构与算法分析》书上的左式堆,deleteMin例程没有完整给出,自己试着实现一下:

ElementType deleteMin(priorityQueue H){    ElementType Tmp;    Tmp = findMin(H);    deleteMin1(H);    return Tmp;}priorityQueue deleteMin1(priorityQueue H){    priorityQueue leftHeap, rightHeap;        if(isEmpty(H))    {        Error("Priority queue is empty");        return H;    }    leftHeap = H->Left;    rightHeap = H->Right;    free(H);    return Merge(leftHeap, rightHeap);}ElementType findMin(priorityQueue H){    if(isEmpty(H))    {        Error("Priority queue is empty");        return -1;    }    else        return H->Element;}




0 0
原创粉丝点击