链表的头插和尾插法
1、头插法相对简便,但插入的数据与插入的顺序相反;
//链表的头插法
bool LinkListCreate_Head(LinkList &L) {
LNode *s;
L = (LinkList)malloc(sizeof(LNode));
L->next = NULL;
int temp;
while (scanf("%d", &temp) > 0) {
s = (LNode*)malloc(sizeof(LNode));
s->data = temp;
s->next = L->next;
L->next = s;
}
return true;
}
2、尾插法操作相对复杂,但插入的数据与插入顺序相同
//链表的尾插法
bool LinkListCreat_Tail(LinkList &L) {
L->next = NULL;
LNode *p = L;
int temp;
while (scanf("%d", &temp) > 0) {
LinkList q = (LinkList)malloc(sizeof(LNode));
q->data = temp;
p->next = q;
p = p->next;//p = q;
}
p->next = NULL;
return true;
}