编程实现合并两个有序单链表
2016-12-11 18:37
369 查看
Node* Merge2(Node* head1, Node* head2) { Node* res,*ret; if(head1 == NULL) return head2; if(head2 == NULL) return head1; Node* p = head1; Node* q = head2; if(p->value < q->value) { res = p; p = p->next; } else { res = q; q = q->next; } ret = res; while(p && q) { if(p->value < q->value) { res->next = p; res = p; p = p->next; } else { res->next = q; res = q; q = q->next; } } while(p) { res->next = p; res = p; p = p->next; } while(q) { res->next = q; res = q; q = q->next; } return ret; }
相关文章推荐
- 编程实现两个有序单链表的合并
- 编程实现合并两个有序单链表
- 实现两个有序单链表的合并。要求:随机创建两个单链表,实现单链表的排序,再对两个有序单链表进行合并。
- 两个有序单链表合并成一个有序单链表的java实现
- 将两个递增的有序链表合并为一个递增的有序链表(C语言编程实现)
- 将两个非递减的有序链表合并为一个非递增的有序链表(C语言编程实现)
- 单链表操作之合并两个有序单链表---递归 and 非递归实现
- 两个有序单链表合并成一个有序单链表的java实现
- Java 非递归 和非递归方法 实现两个有序单链表的合并
- 将两个递增的有序链表合并为一个递增的有序链表(C语言编程实现)
- java编程实现将两个有序单链表LA,LB合并成新的LA
- 将两个非递减的有序链表合并为一个非递增的有序链表(C语言编程实现)
- 非递减合并两个有序单链表
- Leetcode:Merge Two Sorted Lists 合并两个有序单链表
- 两个有序单链表的合并
- 两个有序单链表合并
- 合并两个单链表为递减有序的单链表
- 用C#实现单链表(merge两个有序单链表)
- 探讨:将两个链表非降序合并为一个链表并依然有序的实现方法
- 【C语言版数据结构】线性表的链式表示,并且实现合并两个非递减有序排列到新的线性表