链表快排
Posted ymjyqsx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了链表快排相关的知识,希望对你有一定的参考价值。
https://blog.csdn.net/otuhacker/article/details/10366563
每次是小数的最后一个,然后用的next位置进行的交换,如果第二个数比第一个数小,就相当于第二数和自己进行交换
pNode* partition(pNode* start,pNode* end){ int num = start->val; pNode* p = start; pNode* q = start->next; while(q != end){ if(q->val < num){ p = p->next; swap(p->val,q->val); } q = q->next; } swap(p->val,start->val); return p; } void quick_sort(pNode* start,pNode* end){ if(start != end){ pNode* index = partition(start,end); quick_sort(start,index); quick_sort(index->next,end); } }
以上是关于链表快排的主要内容,如果未能解决你的问题,请参考以下文章