思路:因为是带头节点的链表,所以头节点的下一个位置才开始有数值。我们遍历整个链表去寻找该插入的点,然后用单链表的插入方法即可!
List Insert( List L, ElementType X ){
List head = L;
List p = (List)malloc(sizeof(struct Node));
p->Data = X;
p->Next = NULL;//带头节点,所以L->Next才是第一个数据
while(L->Next && L->Next->Data < X)//存在且数值比它小
{
L = L->Next;//往后走
}
p->Next = L->Next;
L->Next = p;
return head;
}