PHP实现合并两个排序链表的方法

 更新时间:2018年01月19日 08:57:50   作者:重口味AC  
这篇文章主要介绍了PHP实现合并两个排序链表的方法,涉及php针对链表的遍历、判断、排序等相关操作技巧,需要的朋友可以参考下

本文实例讲述了PHP实现合并两个排序链表的方法。分享给大家供大家参考,具体如下:

问题

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

解决思路

简单的合并排序。由于两个数列本来就是递增的,所以每次将两个数列中较小的部分拿过来就可以了。

实现代码

<?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;
 $reHead = new ListNode();
 if($pHead1->val < $pHead2->val){
  $reHead = $pHead1;
  $pHead1 = $pHead1->next;
 }else{
  $reHead = $pHead2;
  $pHead2 = $pHead2->next;
 }
 $p = $reHead;
 while($pHead1&&$pHead2){
  if($pHead1->val <= $pHead2->val){
   $p->next = $pHead1;
   $pHead1 = $pHead1->next;
   $p = $p->next;
  }
  else{
   $p->next = $pHead2;
   $pHead2 = $pHead2->next;
   $p = $p->next;
  }
 }
 if($pHead1 != NULL){
  $p->next = $pHead1;
 }
 if($pHead2 != NULL)
  $p->next = $pHead2;
 return $reHead;
}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • 通过实例解析PHP数据类型转换方法

    通过实例解析PHP数据类型转换方法

    这篇文章主要介绍了通过实例解析PHP数据类型转换方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • PHP查找数值数组中不重复最大和最小的10个数的方法

    PHP查找数值数组中不重复最大和最小的10个数的方法

    这篇文章主要介绍了PHP查找数值数组中不重复最大和最小的10个数的方法,涉及php中array_unique与array_slice方法的使用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • PHP设计模式概论【概念、分类、原则等】

    PHP设计模式概论【概念、分类、原则等】

    这篇文章主要介绍了PHP设计模式概论,总结叙述了设计模式的基本概念、功能、分类、原则等,需要的朋友可以参考下
    2020-05-05
  • jQuery ajax+PHP实现的级联下拉列表框功能示例

    jQuery ajax+PHP实现的级联下拉列表框功能示例

    这篇文章主要介绍了jQuery ajax+PHP实现的级联下拉列表框功能,涉及php结合jQuery的$.get方法动态交互实现省市二级联动下拉列表框相关操作技巧,需要的朋友可以参考下
    2019-02-02
  • PHP 工厂模式使用方法

    PHP 工厂模式使用方法

    工厂类是指包含一个专门用来创建其他对象的方法的类,工厂类在多态性编程实践中是至关重要的,它允许动态的替换类,修改配置,通常会使应用程序更加灵活,熟练掌握工厂模式高级PHP开发人员是很重要的。
    2010-05-05
  • PHP提取中文首字母

    PHP提取中文首字母

    从别人程序中扒拉出来的提取中文首字母的php代码不是原创。Dzender的代码学习用
    2008-04-04
  • PHP设计模式之工厂模式与单例模式

    PHP设计模式之工厂模式与单例模式

    这篇文章主要介绍了PHP设计模式之工厂模式与单例模式,简单介绍的工厂模式与单例模式的功能,并结合实例形式分析了工厂模式及单例模式的实现与应用,需要的朋友可以参考下
    2016-09-09
  • PHP生成指定随机字符串的简单实现方法

    PHP生成指定随机字符串的简单实现方法

    这篇文章主要介绍了PHP生成指定随机字符串的简单实现方法,涉及php操作数组与字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • PHP实现通过文本文件统计页面访问量功能示例

    PHP实现通过文本文件统计页面访问量功能示例

    这篇文章主要介绍了PHP实现通过文本文件统计页面访问量功能,涉及php文件读写、数值计算及图形操作相关实现技巧,需要的朋友可以参考下
    2019-02-02
  • PHP创建文件及写入数据(覆盖写入,追加写入)的方法详解

    PHP创建文件及写入数据(覆盖写入,追加写入)的方法详解

    这篇文章主要介绍了PHP创建文件及写入数据(覆盖写入,追加写入)的方法,结合实例形式总结分析了php文件创建、写入操作相关函数使用技巧,需要的朋友可以参考下
    2019-02-02

最新评论