力扣第21题合并两个链表,这里需要将两个链表的结点根据条件依次摘下并接入新链表中。解题思路较为明确,但在关于如何组装新链表的问题上,有一个非常重要和实用的技巧——虚拟头结点
C语言课上我们学习到链表有两种形式,带头结点的链表和不带头结点的链表。
虽然二者在结构上仅有“有无头结点”的差距,但在实际编程中,使用带头结点的链表将带来巨大的便利。
struct ListNode {
int val;
struct ListNode *next;
};
struct ListNode* buildList(int val[], int num){
//依据数组新建链表
//声明头结点并分配空间