23. Merge k Sorted Lists
来源:互联网 发布:淘宝助理宝贝图片尺寸 编辑:程序博客网 时间:2024/06/05 03:35
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode mergeKLists(ListNode[] lists) { if (lists.length == 0)return null;return help(lists, 0, lists.length - 1); } public ListNode help(ListNode[] lists, int left, int right) {if (left == right)return lists[left];int center = left + (right - left) / 2;return merge(help(lists, left, center), help(lists, center + 1, right));} public ListNode merge(ListNode l1, ListNode l2) {ListNode head = new ListNode(0);ListNode re = head;while (l1 != null || l2 != null) {if (l1 != null && l2 != null) {if (l1.val < l2.val) {head.next = l1;head = head.next;l1 = l1.next;} else {head.next = l2;head = head.next;l2 = l2.next;}} else if (l1 != null) {head.next = l1;head = head.next;l1 = l1.next;} else {head.next = l2;head = head.next;l2 = l2.next;}}return re.next;}}
阅读全文
0 0
- 23. Merge k Sorted Lists
- 23.Merge K Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23.Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23.Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- 23. Merge k Sorted Lists
- C++学习笔记(3)-重载与多态
- docker基础命令
- Android 简单的SharedPreferences轻量型存储方式
- centos7 打开指定的端口
- 情感分析
- 23. Merge k Sorted Lists
- mysql中的tinyint,smallint,int,bigint
- struts+hibernate工作原理和简单工程创建步骤(附工程下载地址)
- 监听input内容实时变化
- C++并发编程
- Shell 流程控制
- 希尔排序-JAVA实现
- 分页
- 李沐深度学习课程网址