如何理解这个C++合并排序代码的工作原理?[已关闭]

问题描述 投票:-3回答:1
template<class Type>
void linkedQueueType<Type>::mergeSort() {
    mergeSort(queueFront);
    if (queueFront == NULL) 
        queueRear = NULL;
    else {
        queueRear = queueFront;
        while (queueRear->link != NULL)
            queueRear = queueRear->link;
    }
    return;
}

我不明白这个合并排序。

c++ mergesort
1个回答
2
投票

看起来这个函数是主要的 mergeStort 的入口点。它调用一个辅助函数(也叫 mergeSort)来进行实际的排序。但是看起来,帮助函数并没有设置好 queueRear 正确,所以在调用助记函数后,这个函数要设置 queueRear 指向队列中的最后一个条目(或者是 NULL 如果队列是空的)。)

© www.soinside.com 2019 - 2024. All rights reserved.