两个链表有序 合并成一个链表
来源:互联网 发布:古希腊人口知乎 编辑:程序博客网 时间:2024/06/06 00:54
1、递归实现
Node * Merge(Node *head1 , Node *head2){if ( head1 == NULL )return head2 ;if ( head2 == NULL)return head1 ;Node *head = NULL ;if ( head1->data < head2->data ){head = head1 ;head->next = Merge(head1->next,head2);}else{head = head2 ;head->next = Merge(head1,head2->next);}return head ;}
2、非递归实现
Node * Merge(Node *head1 , Node *head2){if ( head1 == NULL)return head2 ;if ( head2 == NULL)return head1 ;Node *head = NULL ;Node *p1 = NULL;Node *p2 = NULL;if ( head1->data < head2->data ){head = head1 ;p1 = head1->next;p2 = head2 ;}else{head = head2 ;p2 = head2->next ;p1 = head1 ;}Node *pcurrent = head ;while ( p1 != NULL && p2 != NULL){if ( p1->data <= p2->data ){pcurrent->next = p1 ;pcurrent = p1 ;p1 = p1->next ;}else{pcurrent->next = p2 ;pcurrent = p2 ;p2 = p2->next ;}}if ( p1 != NULL )pcurrent->next = p1 ;if ( p2 != NULL )pcurrent->next = p2 ;return head ;}
- 两个有序链表合并成一个有序链表
- 两个有序链表合并为一个有序链表
- 两个有序链表合并为一个有序链表
- 两个有序链表求差集,合并为一个有序链表
- 两个链表有序 合并成一个链表
- Java将两个有序链表合并为一个有序链表、将两个有序数组合并成一个有序数组
- 有序的合并两个有序链表
- 两个有序链表合并为有序
- 合并两个有序链表
- 合并两个有序链表
- 合并两个有序链表
- 合并两个有序链表
- 合并两个有序链表
- 合并两个有序链表
- 合并两个有序链表
- 合并两个有序链表
- 两个有序链表合并
- 合并两个有序链表
- c++调用lua
- awk介绍
- C语言怎样随机画线并产生模糊效果?
- boost的bind为何导致vc2005编译器崩溃
- GNS3 网络模拟器介绍
- 两个链表有序 合并成一个链表
- Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules
- javascript 在线压缩和解压工具
- 绿化python安装,文件关联设置
- hdu 2845
- ubuntu 12.04 编译android 4.04
- 优先队列
- JFace中找不到org/eclipse/core/runtime/EventManager的解决
- ORACLE 中ROWNUM用法总结!(精华) ROWNUM 与 ROWNID 区别