Home  >  Article  >  Backend Development  >  An explanation of how to get the K-th node from the last in a linked list using PHP

An explanation of how to get the K-th node from the last in a linked list using PHP

jacklove
jackloveOriginal
2018-06-30 17:47:261481browse

This article mainly introduces the method of PHP to obtain the Kth node from the last in the linked list, involving PHP's traversal, judgment and other related operating skills for the linked list. Friends in need can refer to it

This article describes the examples PHP method to get the Kth node from the last in a linked list. Share it with everyone for your reference. The details are as follows:

Question

Input a linked list and output the k-th node from the last in the linked list.

Solution ideas

Note that this question returns nodes, not values. The return value can be stored on the stack. This cannot be done with return nodes.

Set two pointers, first move the first pointer k-1 times. Then the two pointers move at the same time. When the first pointer reaches the last node, the second pointer is at the k-th node from the bottom.

Note the boundary: the length of K may exceed the length of the linked list, so when the next of the first pointer is empty, null is returned

Implementation code

<?php
/*class ListNode{
 var $val;
 var $next = NULL;
 function __construct($x){
  $this->val = $x;
 }
}*/
function FindKthToTail($head, $k)
{
 if($head == NULL || $k ==0)
  return NULL;
 $pre = $head;
 $last = $head;
 for($i=1; $i<$k; $i++){
  if($last->next == NULL)
   return NULL;
  else
   $last = $last->next;
 }
 while($last->next != NULL){
  $pre = $pre->next;
  $last = $last->next;
 }
 return $pre;
}

Articles you may be interested in:

PHP implementation of printing a binary tree from top to bottom Method explanation

php method of sending custom data through header_php skills

php uses ob_start() to clear the output And the method of selective output is explained

The above is the detailed content of An explanation of how to get the K-th node from the last in a linked list using PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn