SelectSort

selectionSort() 

Posi(T) head = p->pred;
Posi(T) tail = p;
for (int i = 0; i < n; i++)
    tail = tail->succ;//对列表中起始于位置p的连续n个元素做选择排序。
while (1 < n) {
    insertBefore( tail, remove( selectMax (head->succ, n)));
    tail = tail->pred;
    n--;
}

 selectMax()

Posi(T) max = p;
for (Posi(T) cur =p; 1 < n; n--)
    if ( !lt(( cur = cur->succ )->data, max->data))
        max = cur;
    return max;

 

 

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 18:03
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务