pta_链表的插入排序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
//实现一个简单的链表拼接
void insertion_sort(LinkNode *&L)
{
//创造一个有序区
LinkNode *p;
LinkNode *pre;
p=L->next->next;
LinkNode *q;
L->next->next=NULL;
pre=L->next;
LinkNode *z=L;
while(p)
{
q=p->next;
while(pre&&pre->data<p->data)
{
z=pre;
pre=pre->next;
}
p->next=pre;
z->next=p;
p=q;
}

}
//第二次错误点在有序区的头指针 没有放在while里面更新


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!