剑指Offer-17
来源:互联网 发布:mac安装ant 编辑:程序博客网 时间:2024/06/02 07:29
题目:
输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。
实现
// coding = javapublic class Solution17 { //法1 非递归实现 public Node mergeList1(Node head1,Node head2){ if(head1==null && head2==null){ return null; } if(head1==null){ return head2; } if(head2==null){ return head1; } Node head; if(head1.value<=head2.value){ head = head1; head1 = head1.next; } else { head = head2; head2 = head2.next; } Node cur_node = head; while (head1!=null && head2!=null){ if(head1.value<=head2.value){ cur_node.next = head1; head1 = head1.next; } else { cur_node.next = head2; head2=head2.next; } cur_node = cur_node.next; } while(head1!=null){ cur_node.next = head1; head1 = head1.next; cur_node = cur_node.next; } while (head2!=null){ cur_node.next = head2; head2 = head2.next; cur_node = cur_node.next; } cur_node.next=null; return head; } //法2 递归实现 public Node mergeList2(Node head1,Node head2){ if(head1==null){ return head2; } else if(head2==null){ return head1; } Node head; if(head1.value<head2.value){ head = head1; head.next = mergeList2(head1.next,head2); } else{ head = head2; head.next = mergeList2(head1,head2.next); } return head; } public static void main(String[] args){ Node head1 = new Node(2); head1.next = new Node(8); head1.next.next = new Node(10); head1.next.next.next = new Node(20); Node head2= new Node(1); head2.next = new Node(3); head2.next.next = new Node(7); head2.next.next.next = new Node(18); Solution17 s17 = new Solution17(); Node new_head = s17.mergeList1(head1,head2); while (new_head!=null){ System.out.format(" %d",new_head.value); new_head = new_head.next; } }}
阅读全文
1 0
- 剑指Offer-17
- 剑指offer题17
- 剑指offer面试题17
- 【面试题】剑指offer 17
- 剑指OFFER
- 剑指offer
- 剑指Offer
- 剑指offer
- 剑指Offer
- 剑指offer
- 剑指offer
- 剑指offer
- 剑指Offer
- 剑指offer
- 剑指offer
- 剑指Offer
- 剑指offer
- 剑指offer
- 分针网—每日分享:Axios全攻略
- 一种基于Makefile的编译系统架构实现及自动化
- Spring中监听器的详解
- 如何低成本搭建高性能分布式搜索引擎?
- worldfinal2017-C(二分最大匹配)
- 剑指Offer-17
- 返回顶部
- .net MVC接口编写和调用
- Java多线程详解生产者和消费者
- 让tomcat支持https
- MTK6735 Android之Camera驱动移植篇
- 在SecureCRT中设置上传下载目录
- linux下挂载ntfs文件系统
- UIButton(干货)--教你如何利用runtime自定义UIButton的titleLabel以及image的frame