要求:
已知指针ha和hb分别指向两个单链表的头结点,并且已知两个链表的长度分别为m和n。试写一算法将这两个链表连接在一起。假设指针hc指向连接后的链表的头结点,并要求算法以尽可能短的时间完成连接运算。
C语言实现:

void MergeList_L(LinkList &ha,LinkList &hb,LinkList &hc)
{
	LinkList pa,pb;
	pa=ha;
	pb=hb;
	while(pa->next&&pb->next){
		pa=pa->next;
		pb=pb->next;
	}
	if(!pa->next){
		hc=hb;
		while(pb->next)
			pb=pb->next;
		pb->next=ha->next;
	}
	else{
		hc=ha;
		while(pa->next)
			pa=pa->next;
		pa->next=hb->next;
	}
}
posted on 2020-03-15 19:00  小肥鱼~  阅读(47)  评论(0)    收藏  举报