【数据结构】单链表—合并两个排序链表 — 递归
来源:互联网 发布:淘宝店铺如何重新激活 编辑:程序博客网 时间:2024/05/14 19:26
题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍使按照递增排序的。
思路:
代码如下:
template<class T>struct ListNode{ T _value; ListNode<T>* _next; ListNode(const T& value) :_value(value) ,_next(NULL) {}};template<class T>class List{public: List() :_head(NULL) {} bool PushBack(); ListNode<T>* Merger(ListNode<T>* head) { return _Merger(_head,head); } ListNode<T>* _Merger(ListNode<T>* head1,ListNode<T>* head2)//合并两个有序链表,返回新链表的指针 { if(head1 == NULL) return head2; if(head2 ==NULL) return head1; ListNode<T>* NewHead = NULL; if(head1->_value < head2->_value)//_head为新链表头节点 { NewHead = head1; NewHead->_next = _Merger(head1->_next,head2); } else { NewHead = head2; NewHead->_next = _Merger(head1,head2->_next ); } return NewHead;//一定要给上一层返回! }private: ListNode<T>* _head;};
0 0
- 【数据结构】单链表—合并两个排序链表 — 递归
- 链表——(循环和递归)合并两个排序链表
- 剑指offer——面试题17:合并两个排序的链表(非递归方法和递归方法)
- 合并两个排序的链表(非递归)
- 合并两个排序的链表(递归算法)
- 合并两个排序的链表---递归实现
- litcode 合并两个排序链表 递归求解
- 数据结构 合并两个链表
- 面试之路(29)-合并两个排序的链表(递归和非递归)
- 《剑指offer》——合并两个排序的链表
- 《剑指offer》——合并两个排序的链表
- 剑指offer——合并两个排序的链表
- 合并两个排序的链表——剑指offer
- C语言——合并两个递增排序链表
- 牛客网——合并两个排序的链表
- 剑指offer——合并两个排序的链表
- 剑指offer——两个合并排序的链表
- 剑指Offer——合并两个排序的链表
- python 学习(三)
- 山东理工OJ 2075 最少拦截系统
- Spring AOP 的几个知识点
- 只使用代码创建WPF应用程序
- Linux下locate命令和find命令
- 【数据结构】单链表—合并两个排序链表 — 递归
- android调用系统分享
- [计算机网络]--NAT原理介绍
- DL学习笔记【9】caffe参数调节-全连接层
- 设置子视图不随父视图alpha改变
- Openjudge 百练第4109题
- POJ-1128 Frame Stacking
- MySQL 数据备份与还原
- oracle日期修改