
1个回答
推荐于2016-12-02
展开全部
算法描述很简单啊:
void Link(L1,L2)
{
Node p = L1.head;
while(p->next);//循环完毕p为L1的最后一个节点
p->next = L2.head;//将L2的头节点连接到p的下一节点
}
void Link(L1,L2)
{
Node p = L1.head;
while(p->next);//循环完毕p为L1的最后一个节点
p->next = L2.head;//将L2的头节点连接到p的下一节点
}
追问
为什么百度到的都比你这个稍多点呢。
能不能再具体点?语句是不是有点少阿
追答
百度到的一定是对的?
L1和L2已经明确是两个单链表的头结点,那么算法很简单:
将L1遍历到链尾,然后将链尾的next指向L2,即可实现将L2链在L1后面
代码实现不是语句越多越好,有的时候,语句越多说明水平越差
另外,评论的兄弟写的是对的,我疏忽了,应该是:
oid Link(L1,L2)
{
Node p = L1.head;
while(p->next)p=p->next;//循环完毕p为L1的最后一个节点
p->next = L2.head;//将L2的头节点连接到p的下一节点
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询