当前位置:首页 > PHP教程 > php应用 > 列表

PHP从尾到头打印链表实例讲解

发布:smiling 来源: PHP粉丝网  添加日期:2021-10-30 11:49:36 浏览: 评论:0 

这篇文章给大家分享了关于PHP从尾到头打印链表的相关知识点内容,有需要的朋友们可以测试下。

题目

输入一个链表,从尾到头打印链表每个节点的值。

题解

一种是使用栈。

第二种是递归。

代码

  1. //递归版本 
  2. function printListFromTailToHead($head) 
  3. { 
  4.   if($head == NULL){ 
  5.     return []; 
  6.   } 
  7.  
  8.   $arr = array(); 
  9.   $cur = $head; 
  10.  
  11.   if($cur->next != null){ 
  12.     $arr = printListFromTailToHead($cur->next);   
  13.   } 
  14.   array_push($arr, $cur->val); 
  15.   return $arr; 
  16.  
  17.  
  18.  
  19. } 
  20. //非递归版本 
  21. function printListFromTailToHead($head) 
  22. { 
  23.   if($head == NULL){ 
  24.     return []; 
  25.   } 
  26.  
  27.   $cur = $head; 
  28.   $arr = array(); 
  29.   $re = array(); 
  30.  
  31.   while($cur != NULL){ 
  32.     array_push($arr, $cur->val); 
  33.     $cur = $cur ->next; 
  34.   } 
  35.  
  36.  
  37.   while(!emptyempty($arr)){ 
  38.     $tmp = array_pop($arr); 
  39.     array_push($re, $tmp); 
  40.   } 
  41.   return $re; 
  42. }

Tags: PHP打印链表

分享到: