//递归思路:
public class Merge1_1 {
public ListNode merge(ListNode list1, ListNode list2) {
if (list1 == null) {
return list2;
}
if (list2 == null) {
return list1;
}
ListNode listHead = null;
if (list1.val <= list2.val) {
listHead = list1;
listHead.next = merge(list1.next, list2);
}
else{
listHead = list2;
listHead.next = merge(list1, list2.next);
}
return listHead;
}
public static void main(String[] args) {
ListNode list1 = new ListNode(1);
list1.next = new ListNode(2);
list1.next.next = new ListNode(5);
list1.next.next.next = new ListNode(7);
ListNode list2 = new ListNode(1);
list2.next = new ListNode(2);
list2.next.next = new ListNode(4);
list2.next.next.next = new ListNode(6);
Merge1_1 m = new Merge1_1();
ListNode mergeList = m.merge(list1, list2);
m.printList(mergeList);
}
void printList(ListNode mergeList) {
while (mergeList != null) {
System.out.print(mergeList.val + " ");
mergeList = mergeList.next;
}
}
}
剑指offer:第17题合并链表
最新推荐文章于 2025-07-14 03:07:14 发布
