whttp://blog.csdn.net/qq_41028985/article/details/82859199
并不是所有链表都有头节点,若一个链表有头节点,就是他的数据是空的,
有头结点的判空条件是head->next==NULL;即结点指的空间为空;
没有头节点的判空条件是p==NULL
头插法:
(都是有头节点的)
如果顺序颠倒,那么NULL所在的位置就会找不到
这样头插输入顺序和打印顺序不同,若想输入和输出一致就要用到尾插法了
尾插法
(有头节点)
头指针和尾指针real刚开始都指向头节点
rear指针存在的意义就是始终保证指向最后,能够按顺序打印
当展开之后就会发现,把p换成q就行
打印的时候可以这样
void daYin(Node *head)
{
head=head->Next;
while(head)
{
printf("%d\n",head->date);
head=head->Next;
}
}