首页 > 其他 > 详细

【数据结构】两个单循环链表的连接操作

时间:2014-06-29 22:32:38      阅读:398      评论:0      收藏:0      [点我收藏+]

如果在单链表或头指针表示的链表上操作这个比较消耗性能,因为都需要遍历第一个链表,找到an,然后将b1链接到an的后面,时间复杂度是:O(n)。若在尾指针表示的单循环链表上实现,则只需改变指针,无需遍历,时间复杂度是:O(1)

现在看算法实现,需要4个主要步骤,都注释了:

	LinkList Connect(LinkList A,LinkList B){
		//假设A,B为非空循环链表的尾指针
		LinkList p = A->next;//1、保存A链表的头结点的位置
		A->next = B->next->next;//2、将A表的表尾链接到B表达开始节点处
		free(B->next);//3、释放B表达头结点
		B->next= P;//4、将B表达表尾的next链接到A的头
		return B;//返回新循环链表的尾指针
	}


【数据结构】两个单循环链表的连接操作,布布扣,bubuko.com

【数据结构】两个单循环链表的连接操作

原文:http://blog.csdn.net/howlaa/article/details/35624757

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!