定义链表的数据结构
typedef struct _LinkNode {
int data; //节点的数据
struct _LinkNode* next; //节点的指针区域
}LinkNode,LinkList; //链表节点、链表构造一个空链表的方法
bool InitList(LinkList* &L) //构造一个空的链表L
{
L = new LinkNode;
if (!L) return false; //生成节点失败
L->next = NULL;
return true;
}前插法插入一个节点
//前插入法
bool ListInsert_front(LinkList*& L, LinkNode* node)
{
if (!L || !node) return false;
node->next = L->next;
L->next = node;
return true;
}举个例子:

现在有一个空链表L,一个节点node1,现在要用前插入法,将node1插入到链表中,
第一步
node->next = L->next;
两个值都是null,这一步没实际意义,
第二部:
L->next = node;

现在已经利用前插入法,将node1插进了链表L。
现在又有一个新的节点,node2,我们用前插入法,将node2插入到链表L中:
目前的状态,有一个链表L,链表里有两个节点,还有一个新节点node2

第一步
node->next = L->next;

第二步
L->next = node;

这样,我们就把节点node2,也用前插入法,插入到了链表L中!