链表·简单归并
-
cur->next = la;
//将 p指针所指向的链表节点的next
指针(也就是p
节点的下一个节点的指针)指向l1
所指向的链表节点。简单来说,就是把la
节点连接到p
节点的后面,更新了链表的连接关系。 -
p = la;
//将p指针的值更新为la
指针的值,也就是让 p指针指向la
所指向的那个链表节点,为了后续对这个新连接上的节点进行操作,或继续在链表上向后移动 p指针,以便处理链表的后续部分。 -
la = la->next;
//将la
指针指向 la当前所指向节点的下一个节点。也就是,la
指针向后移动了一位,指向链表中的下一个节点。这在遍历链表或者对链表节点进行逐个处理时是很常见的操作,用于按顺序访问链表中的每个节点。 -
ListNode* merge(ListNode* la, ListNode* lb) {
ListNode *lc = new ListNode(0);
ListNode *p = lc;
while (la && lb ) {
if (la -> val < lb -> val) {
p -> next = la;
la= la -> next;
}
else {
p -> next = lb;
lb= lb -> next;
}
p = p -> next;
}
p -> next = (la ? la : lb);
return lc -> next; -
画个图易于理解
-