=
pre->next,然后把cur连接的一串链表连接到pre后面,即pre->next
=
cur
上面介绍了,在一个节点之后插入节点的情况。这是通常的情况。如果要向一个链表的头部插入节点,就只需要将新节点的下一个指针指向链表的头指针即可。
在这种情况下,有两点要注意:
1,链表是否为空链表
2,要插入的节点是不是空指针。
代码实现:
//向单链表中插入一个节点(插入在链开始处)
//输入参数:单链表的头指针和要插入的节点指针
//输出参数:无
//返回值:指向单链表的头指针
singlelist*
insert(singlelist
*head,singlelist
*node)
{
if(node
==
null)
{
return
head
}
else
if(head
==
null)
{
return
node
}
node->next
=
head
head
=
node
return
head
}
链表中,假设有一个头节点,即一个head指针指向链表的第一个节点,如果要查找目的节点,可以从头开始往后搜索,注意,head节点指向的是一个数据结构,该结构包括element(元素值),还有一个next指针,该指针指向下一个链表节点。遍历链表进行查找时,循环条件可以是while(pone !=NULL),在循环内部就不断调用pone=pone.next,一旦找到满足条件的就退出循环,即break。在这里假设链表为a->b->c,假设pone指向a节点,可以通过pone.element访问a节点的值,并且pone.next就是b,在循环过程中,pone=pone.next,如果当前的pone为a,那么执行这句话后就是将b给pone,即将pone指针指向b,在循环中一直使用这句话就可以保证pone一直向后移动直到找到目标节点。希望可以帮到你。