摘要: Q:合并k个已排序的链表并将其作为一个已排序的链表返回。分析并描述其复杂度。 A:用小跟堆 public static ListNode mergeKLists(ArrayList<ListNode> lists) { if (lists == null || lists.size() == 0) 阅读全文
posted @ 2020-04-06 15:51 Shaw_喆宇 阅读(144) 评论(0) 推荐(0) 编辑
摘要: Q:将给定的链表中每两个相邻的节点交换一次,返回链表的头指针 例如, 给出1->2->3->4,你应该返回链表2->1->4->3。 你给出的算法只能使用常量级的空间。你不能修改列表中的值,只能修改节点本身。 A: public static ListNode swapPairs(ListNode 阅读全文
posted @ 2020-04-06 15:21 Shaw_喆宇 阅读(156) 评论(0) 推荐(0) 编辑
摘要: Q:给定一组不重叠的时间区间,在时间区间中插入一个新的时间区间(如果有重叠的话就合并区间)。这些时间区间初始是根据它们的开始时间排序的。 示例1: 给定时间区间[1,3],[6,9],在这两个时间区间中插入时间区间[2,5],并将它与原有的时间区间合并,变成[1,5],[6,9]. 示例2: 给定时 阅读全文
posted @ 2020-04-06 14:53 Shaw_喆宇 阅读(177) 评论(0) 推荐(0) 编辑