主要思想
①取出链表的首节点作为pivot;
②生成两条子链,分别大于等于/小于pivot的值
③递归快排子链
④连接子链与pivot
代码
/**
* @author Liszt
* 2021/3/25 - 10:25
*/
public class QuickSort {
/*
* 定义类结构
* */
static class ListNode{
int val;
ListNode next;
ListNode (int val){
this.val = val;
next=null;
}
}
/*
* 连接pivot节点和其前后的两个链表
* */
public static ListNode connect(ListNode a,ListNode b,ListNode c){
if(a==null){
b.next = c;
return b;
}
ListNode cur = a;
while(cur.next!=null){
cur=cur.next;
}
cur.next = b;
b.next = c;
return a;