单链表 --- 合并两个单链表
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单链表 --- 合并两个单链表相关的知识,希望对你有一定的参考价值。
合并单链表 -->
一、解决方法:
确保两个单链表不为空,且二者皆有序(若无序,则先进行排序)
创建新的单链表,并比较原本两个单链表数据大小,较小者置于新单链表中
逐步将两个单链表的数据置于新单链表中,直至二者为空
二、程序代码:
ListNode* MergeList(ListNode *L1,ListNode *L2)//合并两个单链表 { ListNode *newHead=NULL; ListNode *tail=NULL; if(L1==NULL) { return L2; } if(L2==NULL) { return L1; } if(L1->_data < L2->_data) { newHead=L1; L1=L1->_next; } else { newHead=L2; L2=L2->_next; } tail=newHead; while(L1 && L2) { if(L1->_data < L2->_data) { tail->_next=L1; L1=L1->_next; } else { tail->_next=L2; L2=L2->_next; } tail=tail->_next; } if(L1) { tail->_next=L1; } if(L2) { tail->_next=L2; } return tail; }
本文出自 “花开彼岸” 博客,请务必保留此出处http://zxtong.blog.51cto.com/10697148/1757698
以上是关于单链表 --- 合并两个单链表的主要内容,如果未能解决你的问题,请参考以下文章