头插法
将第一个节点的地址保存到新节点的next中,再将新节点的地址保存到头节点的next中。
void InsertTest(Linklist *L){
Linklist q;
int i;
for(i = 0; i < 10; ++i){
q = (Linklist)malloc(sizeof(Node));
q->data = i;
q->next = (*L)->next;
(*L)->next = q;
}
//后插入的先输出
}
尾插法
使用指针r指向头节点,指针s指向将要插入的节点,将s保存在r指向的节点的next中,最后将r指向新插入的节点,也就是r = s,这个操作是保持在每一次从尾部插入节点后r始终是指向最后一个节点的。
void InsertTest2(Linklist *L){
Linklist r,s;
int i;
r = *L;
for(i = 0; i < 10; ++i){
s = (Linklist)malloc(sizeof(Node));
s->data = i;
s->next = NULL;
r->next = s;
r = s;
}
//后插入的后输出
}