Maison >développement back-end >tutoriel php >Méthode PHP pour obtenir le nœud Kème du dernier dans une liste chaînée

Méthode PHP pour obtenir le nœud Kème du dernier dans une liste chaînée

韦小宝
韦小宝original
2018-01-19 09:40:461402parcourir

Cet article présente principalement la méthode PHP pour obtenir le Kème nœud du dernier de la liste chaînée, impliquant les compétences opérationnelles associées de PHP pour le parcours et le jugement des listes chaînées. Les amis intéressés par PHP peuvent se référer à cet article

.

Question

Entrez une liste chaînée et affichez le k-ième nœud du dernier de la liste chaînée.

Solution

Notez que cette question renvoie des nœuds, pas des valeurs. La valeur de retour peut être stockée sur la pile. Cela ne peut pas être fait avec des nœuds de retour.

Définissez deux pointeurs, déplacez d'abord le premier pointeur k-1 fois. Ensuite, les deux pointeurs se déplacent en même temps lorsque le premier pointeur atteint le dernier nœud, le deuxième pointeur se trouve au k-ième nœud à partir du bas.

Notez la limite : la longueur de K peut dépasser la longueur de la liste chaînée, donc lorsque le prochain du premier pointeur est vide, null est renvoyé

Implémentation 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;
}

Ce qui précède est tout le contenu de cet article, j'espère que cela pourra aider tout le monde à apprendre ! !

Recommandations associées :

Explication détaillée des déclarations de types de fonctions dans chaque version de PHP

Introduction aux nouvelles fonctionnalités de PHP7

PHP Obtenez le premier caractère non répétitif

dans le flux de caractères

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn