Leetcode基础刷题之PHP解析(19. Remove Nth Node From End of List)

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

内容简介:2019-6-27 星期四 开始吧

2019-6-27 星期四 开始吧

Leetcode基础刷题之 PHP 解析(18. 4Sum)

Leetcode基础刷题之PHP解析(19. Remove Nth Node From End of List)

给定一个链表和一个随机数(随机数在可操作范围),从链表的后面开始,移除倒数第n个节点,返回新的链表。

删除倒数第n个节点,也就是删除链表第Length-n+1个节点,所以第一步先求出链表的长度,第二步就是开始正式找删除节点了,通过指针的移动,先确认Lenght-n的位置,这个位置的下一个位置就是待删除的节点,我们只需要把这个位置的next指针指向他的->next->next即可。

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

    /**
     * @param ListNode $head
     * @param Integer $n
     * @return ListNode
     */
   
    function removeNthFromEnd($head, $n) {
      $temp->next=$head;
      $node=$head;
        $count=0;
        while($node !=null){
            $count++;
            $node=$node->next;
        }
        $count -=$n;
        $node=$temp;
        
        while($count>0){
            $count--;
            $node=$node->next;
        }
        $node->next=$node->next->next;
        return $temp->next;
    }
}

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


以上所述就是小编给大家介绍的《Leetcode基础刷题之PHP解析(19. Remove Nth Node From End of List)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

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

软件测试经验与教训

软件测试经验与教训

Cem Kaner、James Bach、Bret Pettichord / 机械工业出版社 / 2004-1 / 35.00

本书汇总了293条来自软件测试界顶尖专家的经验与建议,阐述了如何做好测试工作、如何管理测试,以及如何澄清有关软件测试的常见误解,读者可直接将这些建议用于自己的测试项目工作中。这些经验中的每一条都是与软件测试有关的一个观点,观点后面是针对运用该测试经验的方法、时机和原因的解释或例子。 本书还提供了有关如何将本书提供的经验有选择性地运用到读者实际项目环境中的建议,在所有关键问题上所积累的经验,以......一起来看看 《软件测试经验与教训》 这本书的介绍吧!

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具