0

我已经使用链表在 C 中实现了 First Fit 和 Worst Fit 算法,但是当谈到 Best Fit 时,我不知道如何实现它。大小对比怎么做?您是否有一系列可接受的尺寸可供检查?

我发现了一个非常有用的代码。让我知道是否有比这更好的实现:

Node *getBestFit(int size) {

    Node *best = NULL;

    Node *node = root;

    while(node!=NULL) {

        if (!node->used && (node->size >= size) && (best==NULL || node->size < best->size)) {

            best = node;

            if (best->size==size) { break; }

        }

        node = node->next;

    }

    return best;

}
4

0 回答 0