Leetcode基础刷题之PHP解析(2. Add Two Numbers)

栏目: PHP · 发布时间: 5年前

2 0 1 9 -5 -13   期一    

算法之二分查找

Leetcode基础刷题之 <a href='https://www.codercto.com/topics/18749.html'>PHP</a> 解析(2. Add Two Numbers)

给定两个非空的链表,它们的位数是按照逆序存储的,并且每个结点存储一个非负整数,将各结点上的两个数字相加返回一个新的链表。

这题还需要注意几个情况就是:1.两个链表的长度不一样的.2.如果某两个结点相加大于10时取个位数,并且进一位。这也就能看出题中最后一个结点值是8,4+6进了一位。这道题可以用递归来解。

/**
 * Definition for a singly-linked list.
 * class ListNode {
 *     public $val = 0;
 *     public $next = null;
 *     function __construct($val) { $this->val = $val; }
 * }
 */
class Solution {

   private $res=0;
  
    /**
     * @param ListNode $l1
     * @param ListNode $l2
     * @return ListNode
     */
    function addTwoNumbers($l1, $l2) {
        $node=new ListNode($this->res + $l1->val + $l2->val);
        if($this->res=intval($node->val >9)){
            $node->val -=10;
        }
    $node->next=(!$this->res && is_null($l1->next) && is_null($l2->next) )?null:$this->addTwoNumbers($l1->next,$l2->next);
        return $node;
    }
}

Github整理地址: https://github.com/wuqinqiang/leetcode-php


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

千夫所指

千夫所指

乔恩·罗森 / 王岑卉 / 九州出版社 / 2016-10-1 / CNY 42.80

编辑推荐: 《乌合之众》是为了跪舔权贵?《普通心理学》实验存在重大漏洞?《引爆点》的理论都是瞎掰的?社交网络时代《1984》预言的“老大哥”是否已经变成事实? 《纽约时报》年度十佳书 《GQ》杂志年度十佳书 《卫报》年度十佳书 《泰晤士报》年度十佳书 《经济学人》年度重推! 黑天鹅年度重点图书! 《乌合之众》是为了迎合权贵?《普通心理学》实验存在重大......一起来看看 《千夫所指》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器