【牛客网】剑指offer编程:合并两个排序的链表(C++)
方法一:非递归方法
1、创建一个虚拟头结点 temp,指向当前结点的指针 cur ;
2、当 p1,p2 都存在时(都有未合并的结点),比较两个链表当前头结点 p1,p2 的大小,
p1 <= p2 时,cur 指向 p1, 将 p1 加入新链表中;p1 > p2 时,cur 指向 p2, 将 p2 加入新链表中。
重复上述操作,直到其中一个链表为空,或者两个链表都为空(合并完成)。
3、如果其中一个链表不为空,那么 cur 指向该链表当前的头结点,合并完成。
方法二:递归方法