- 合并两个链表
给你两个链表 list1 和 list2 ,它们包含的元素分别为 n 个和 m 个。请你将 list1 中下标从 a 到 b 的全部节点都删除,并将list2 接在被删除节点的位置。
class Solution {
public ListNode mergeInBetween(ListNode list1, int a, int b, ListNode list2) {
//定义begin节点到达下标a-1的节点
ListNode begin = list1;
for (int i = 0; i < a - 1; i++)
begin = begin.next;
//定义end节点到达下标b+1的节点
ListNode end = list1;
for (int j = 0; j < b + 1; j++)
end = end.next;
//删除a到b的全部节点
ListNode c = list2;
//先找到list2的末尾节点
while(c.next != null){
c = c.next;
}
//在被删除节点的位置添加list2
begin.next = list2;
c.next = end;
return list1;
}
}