激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP實現按之字形順序打印二叉樹的方法

PHP實現按之字形順序打印二叉樹的方法

2019-10-25 12:46重口味AC PHP教程

這篇文章主要介紹了PHP實現按之字形順序打印二叉樹的方法,涉及php結合棧遍歷二叉樹的相關操作技巧,需要的朋友可以參考下

本文實例講述了PHP實現按之字形順序打印二叉樹的方法。分享給大家供大家參考,具體如下:

問題

請實現一個函數按照之字形打印二叉樹,即第一行按照從左到右的順序打印,第二層按照從右至左的順序打印,第三行按照從左到右的順序打印,其他行以此類推。

解決思路

使用兩個棧

實現代碼

  1. <?php 
  2. /*class TreeNode{ 
  3.   var $val; 
  4.   var $left = NULL; 
  5.   var $right = NULL; 
  6.   function __construct($val){ 
  7.     $this->val = $val; 
  8.   } 
  9. }*/ 
  10. function MyPrint($pRoot) 
  11.   if($pRoot == NULL) 
  12.     return []; 
  13.   $current = 0; 
  14.   $next  = 1; 
  15.   $stack[0] = array(); 
  16.   $stack[1] = array(); 
  17.   $resultQueue = array(); 
  18.   array_push($stack[0], $pRoot); 
  19.   $i = 0; 
  20.   $result = array(); 
  21.   $result[0]= array(); 
  22.   while(!empty($stack[0]) || !empty($stack[1])){ 
  23.     $node = array_pop($stack[$current]); 
  24.     array_push($result[$i], $node->val); 
  25.     //var_dump($resultQueue);echo "</br>"; 
  26.     if($current == 0){ 
  27.       if($node->left != NULL) 
  28.         array_push($stack[$next], $node->left); 
  29.       if($node->right != NULL) 
  30.         array_push($stack[$next], $node->right); 
  31.     }else
  32.       if($node->right != NULL) 
  33.         array_push($stack[$next], $node->right); 
  34.       if($node->left != NULL) 
  35.         array_push($stack[$next], $node->left); 
  36.     } 
  37.     if(empty($stack[$current])){ 
  38.       $current = 1-$current; 
  39.       $next  = 1-$next; 
  40.       if(!empty($stack[0]) || !empty($stack[1])){ 
  41.         $i++; 
  42.         $result[$i] = array(); 
  43.       } 
  44.     } 
  45.   } 
  46.   return $result; 

希望本文所述對大家PHP程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美一级黄色免费 | 精品一区二区三区中文字幕老牛 | a黄在线观看 | 亚洲电影免费观看高清完整版在线观 | h视频在线免费观看 | 色av成人天堂桃色av | 国产精品免费久久久 | 久久久久久久久久久久网站 | 成人男女激情免费视频 | 99爱视频 | 中国字幕av | 玩偶姐姐在线观看免费 | sesee99| 欧美性受xxxx白人性爽 | 久久日韩 | 老司机免费福利午夜入口ae58 | 亚洲情在线 | 福利一区二区三区视频在线观看 | 成人在线观看地址 | 久草在线视频免费播放 | 亚洲欧美日韩一区二区三区在线观看 | 九九热这里只有精品8 | 久草在线观看首页 | 亚洲极色| 国产日韩线路一线路二 | 美女视频黄视大全视频免费网址 | 少妇的肉体的满足毛片 | 日本一区二区精品视频 | 黑人一级片视频 | 黄色免费av网站 | 在线看毛片的网站 | 在线中文日韩 | 成人免费视频 | 国产精品毛片无码 | 老女人碰碰在线碰碰视频 | 久久精品久久精品国产大片 | 香蕉国产片 | 欧美性生活久久 | 黄色特级片黄色特级片 | 中国黄色一级生活片 | 欧美成人午夜精品久久久 |