PHP 合并2个链表

Posted mingzhanghui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 合并2个链表相关的知识,希望对你有一定的参考价值。


输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

 

<?php
class ListNode{
    var $val;
    var $next = NULL;
    function __construct($x){
        $this->val = $x;
    }
}
function Merge($pHead1, $pHead2) {
    if ($pHead1===null) {
        return $pHead2;
    }
    if ($pHead2===null) {
        return $pHead1;
    }
    if ($pHead1->val < $pHead2->val) {
        $pHead1->next = Merge($pHead1->next, $pHead2);
        return $pHead1;
    }
    $pHead2->next = Merge($pHead1, $pHead2->next);
    return $pHead2;
}

  

用递归可以简化问题


以上是关于PHP 合并2个链表的主要内容,如果未能解决你的问题,请参考以下文章

[LeetCode]23. Merge k Sorted Lists

K个排序链表的合并(Hard)

合并k个有序链表

25 合并两个排序的链表(第3章 高质量的代码-代码的鲁棒性)

合并两个排序的链表

p122 合并 K 个有序链表(leetcode 23)