婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP排序二叉樹基本功能實現方法示例

PHP排序二叉樹基本功能實現方法示例

熱門標簽:合肥外呼系統app 電銷機器人-快迭智能 智能外呼電銷系統 沈陽人工智能電銷機器人公司 哈爾濱400電話辦理到易號網 h5 地圖標注 拉薩打電話機器人 寶安400電話辦理 高識別電銷機器人

本文實例講述了PHP排序二叉樹基本功能實現方法。分享給大家供大家參考,具體如下:

這里演示了排序二叉樹節點的插入,中序遍歷,極值的查找和特定值的查找的功能.

基本沒有提供什么概念和定義.建議先簡單了解一下本文提供的幾個概念在來看本文.

實際上,只是簡單的提供了代碼,注釋也很少,各位辛苦了.

二叉樹:在計算機科學中,二叉樹是每個節點最多有兩個子樹的樹結構。

排序二叉樹: 左孩子節點的值小于父節點的值,右孩子節點的值大于父節點的值.

幾個概念:

根節點
葉子節點
左子樹
右子樹
中序遍歷
前序遍歷
后序遍歷
二叉樹查找

中序遍歷:

先遍歷左子樹,在遍歷本節點,在遍歷右節點.遍歷之后的結果就是排序好之后的結果

// created by 曲朋維
// 排序二叉樹
// 完成以下任務.
// 1. 將節點插入到對應位置
// 2. 使用中序遍歷遍歷這個二叉樹
// 3. 找到這個二叉樹的極值
// 4. 搜索一個特定的值
class Node{
  public $key,$left,$right;
  public function __construct($key)
  {
    $this->key = $key;
  }
}
class BinaryTree{
  public $root;
  public $sortArr = [];
  // 插入節點
  public function insertNode($node,$newNode){
    if ($node->key  $newNode->key){
      // 如果父節點小于子節點,插到右邊
      if (empty($node->right)){
        $node->right = $newNode;
      }else{
        $this->insertNode($node->right,$newNode);
      }
    }elseif ($node->key > $newNode->key){
      // 如果父節點大于子節點,插到左邊
      if (empty($node->left)){
        $node->left = $newNode;
      }else{
        $this->insertNode($node->left,$newNode);
      }
    }
  }
  public function insert($key){
    $newNode = new Node($key);
    if (empty($this->root)){
      $this->root = $newNode;
    }else{
      $this->insertNode($this->root,$newNode);
    }
  }
  // 中序遍歷
  public function midSort(){
    $this->midSortNode($this->root);
  }
  public function midSortNode($node){
    if (!empty($node)){
      $this->midSortNode($node->left);
      array_push($this->sortArr,$node->key);
      $this->midSortNode($node->right);
    }
  }
  // 尋找極值
  public function findMin(){
    //不斷的找它的左子樹,直到這個左子樹的節點為葉子節點.
    if (!empty($this->root)){
      $this->findMinNode($this->root);
    }
  }
  public function findMinNode(Node $node){
    if (!empty($node->left)){
      $this->findMinNode($node->left);
    }else{
      echo '這個二叉樹的最小值為:'.$node->key;
    }
  }
  public function findMax(){
    if (!empty($this->root)){
      $this->findMaxNode($this->root);
    }
  }
  public function findMaxNode(Node $node){
    if (!empty($node->right)){
      $this->findMaxNode($node->right);
    }else{
      echo '這個二叉樹的最大值為:'.$node->key;
    }
  }
  // 查找特定的值
  public function find($val = ''){
    if (!empty($val)){
      $this->findNode($this->root,$val);
    }
  }
  public function findNode(Node $node,$val){
    if ($node->key == $val){
      echo '找到'.$val.'了';
    }else if ($node->key > $val){
      // 如果 父節點的值 大于要查找的值,那么查找它的左子樹
      if (!empty($node->left)){
        $this->findNode($node->left,$val);
      }else{
        echo '沒有這個東西!';
      }
    }else if ($node->key  $val){
      if (!empty($node->right)){
        $this->findNode($node->right,$val);
      }else{
        echo '沒有這個東西!';
      }
    }
  }
}
$tree = new BinaryTree();
// 節點插入
$nodes = array(8,3,10,1,6,14,4,7,13);
foreach ($nodes as $value){
  $tree->insert($value);
}
// 中序遍歷
//$tree->midSort();
//print_r($tree->sortArr);
// 尋找極值
//$tree->findMin();
//$tree->findMax();
// 查找特定的值
$tree->find(7);
echo "br/>";
$tree->find(11);

運行結果:

找到7了
沒有這個東西!

更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP數據結構與算法教程》、《php程序設計算法總結》、《php字符串(string)用法總結》、《PHP數組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結》及《PHP數學運算技巧總結》

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

您可能感興趣的文章:
  • PHP實現二叉樹深度優先遍歷(前序、中序、后序)和廣度優先遍歷(層次)實例詳解
  • PHP實現從上往下打印二叉樹的方法
  • PHP獲取二叉樹鏡像的方法
  • PHP實現按之字形順序打印二叉樹的方法
  • PHP基于非遞歸算法實現先序、中序及后序遍歷二叉樹操作示例
  • PHP實現判斷二叉樹是否對稱的方法
  • PHP實現繪制二叉樹圖形顯示功能詳解【包括二叉搜索樹、平衡樹及紅黑樹】
  • PHP完全二叉樹定義與實現方法示例
  • php實現二叉樹中和為某一值的路徑方法

標簽:山東 巴中 林芝 梅州 泰州 張家口 威海 成都

巨人網絡通訊聲明:本文標題《PHP排序二叉樹基本功能實現方法示例》,本文關鍵詞  PHP,排序,二叉,樹,基本,功能,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP排序二叉樹基本功能實現方法示例》相關的同類信息!
  • 本頁收集關于PHP排序二叉樹基本功能實現方法示例的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    99re热这里只有精品免费视频| 国产欧美一区二区三区在线老狼| 日韩一区欧美二区| 亚洲成a人片在线不卡一二三区| 亚洲国产成人私人影院tom| 久久久无码精品亚洲日韩按摩| 精品成人一区二区三区四区| 国产丝袜欧美中文另类| 一区二区三区久久久| 蜜臂av日日欢夜夜爽一区| 日韩精品中午字幕| 亚洲黄色录像片| 久久国产精品露脸对白| 日本大香伊一区二区三区| 欧美电影在线免费观看| 亚洲欧洲精品天堂一级| 极品尤物av久久免费看| 欧美亚洲另类激情小说| 国产日韩精品视频一区| 日韩国产精品久久久| 在线亚洲人成电影网站色www| 制服丝袜亚洲播放| 亚洲激情自拍视频| 福利电影一区二区| 国产欧美日韩不卡| 国产成人精品影视| 中文字幕国产一区二区| 激情久久久久久久久久久久久久久久| 91国在线观看| 亚洲福中文字幕伊人影院| 成人精品电影在线观看| 国产精品视频一二三区| 黄色小说综合网站| 亚洲精品一区二区三区蜜桃下载 | 亚洲制服欧美中文字幕中文字幕| 国产精品中文字幕日韩精品| 日本一区二区三区四区在线视频| 国产69精品久久99不卡| 亚洲美女免费视频| 欧洲生活片亚洲生活在线观看| 91麻豆精品秘密| 午夜电影网一区| 国产精品情趣视频| 欧美福利一区二区| 成人av网址在线| 精一区二区三区| 亚洲国产成人高清精品| 久久精品人人做人人爽人人| 99久久99久久免费精品蜜臀| 国产精品91xxx| 精品在线一区二区| 亚洲黄色片在线观看| 亚洲在线视频一区| 成人动漫一区二区三区| 欧美性xxxxx极品少妇| 久久66热re国产| 夜夜亚洲天天久久| 国产欧美日韩视频在线观看| 欧美日韩精品是欧美日韩精品| 久久久欧美精品sm网站 | 亚洲最新视频在线观看| 欧美性淫爽ww久久久久无| 亚洲精品视频在线看| 亚洲精品在线观看网站| av一本久道久久综合久久鬼色| 亚洲蜜臀av乱码久久精品| 91精品国产综合久久精品app| 99久久精品国产一区| 岛国av在线一区| 国产激情精品久久久第一区二区 | 精品av久久707| 久久久综合视频| 国产农村妇女毛片精品久久麻豆| 欧美不卡123| 国产日本欧洲亚洲| 日韩毛片在线免费观看| 亚洲午夜成aⅴ人片| 久色婷婷小香蕉久久| 国产成人在线电影| 欧美日韩免费一区二区三区| 欧美美女直播网站| xf在线a精品一区二区视频网站| 欧美sm极限捆绑bd| 亚洲欧美激情视频在线观看一区二区三区| 亚洲丝袜制服诱惑| 国产精品久久毛片av大全日韩| 午夜私人影院久久久久| 国产精品资源在线| 在线亚洲一区二区| 26uuu另类欧美| 亚洲成人精品一区二区| av成人动漫在线观看| 久久久久国产精品厨房| 国产欧美日韩不卡| 亚洲丝袜精品丝袜在线| 一区二区国产视频| 青青草91视频| 91社区在线播放| 精品国产在天天线2019| 亚洲狼人国产精品| 午夜精品福利视频网站| 成人黄色电影在线| 欧美肥妇毛茸茸| 亚洲欧洲日韩av| 成人激情图片网| 国产精品理伦片| 中文字幕在线观看一区二区| 亚洲与欧洲av电影| 婷婷丁香久久五月婷婷| 日产国产高清一区二区三区 | 激情久久五月天| 99久久免费视频.com| 91精品国产一区二区人妖| 亚洲视频一区二区免费在线观看| 图片区小说区区亚洲影院| 欧美mv日韩mv亚洲| 亚洲一二三四久久| 国产麻豆精品久久一二三| 国产精品乱码人人做人人爱| 日韩av高清在线观看| 亚洲在线免费播放| 成人三级伦理片| 欧美tickling挠脚心丨vk| 国产精品福利一区二区三区| 国产一区二区三区四| 日韩午夜在线影院| 69久久夜色精品国产69蝌蚪网| 久久国产免费看| 日韩欧美在线观看一区二区三区| 亚洲精品videosex极品| 欧美一二三区精品| 色丁香久综合在线久综合在线观看| 蜜桃久久精品一区二区| 亚洲大尺度视频在线观看| 亚洲欧洲性图库| 欧美mv日韩mv| 亚洲男人的天堂在线观看| 国产精品久久久久久久蜜臀| 久久影院电视剧免费观看| 久久亚洲精精品中文字幕早川悠里| 欧美综合一区二区| 精品视频资源站| 欧美日韩精品一区二区在线播放 | 日韩久久久久久| 国产精品视频yy9299一区| 久久精品国产99| 精品理论电影在线| 狠狠狠色丁香婷婷综合久久五月| 欧美高清一级片在线| 香蕉加勒比综合久久| 欧美日本国产一区| 日本视频在线一区| 国产欧美一区二区三区沐欲| 成人app在线| 国产日韩亚洲欧美综合| 亚洲永久精品国产| 99热99精品| 欧美不卡一区二区三区| 国产清纯美女被跳蛋高潮一区二区久久w| 日本一区二区视频在线观看| 手机精品视频在线观看| 极品美女销魂一区二区三区免费| 色婷婷国产精品综合在线观看| 久久青草欧美一区二区三区| 精品制服美女丁香| 亚洲国产精品黑人久久久| 99re热这里只有精品视频| 亚洲欧洲另类国产综合| 色天天综合久久久久综合片| 免费看欧美美女黄的网站| 久久精品免费在线观看| 欧美日韩精品一区二区三区四区| 国产中文字幕一区| 日韩视频一区在线观看| 亚洲成a人在线观看| 韩国成人在线视频| 亚洲精品水蜜桃| 亚洲欧美国产77777| 97精品久久久久中文字幕| 日本高清不卡视频| 色偷偷88欧美精品久久久| 91丨porny丨在线| 亚洲欧美日韩综合aⅴ视频| 91在线一区二区三区| 亚洲在线视频免费观看| 91精品国产综合久久蜜臀| 一区二区三区日韩欧美| 欧美高清性hdvideosex| 韩国女主播成人在线观看| 亚洲国产精品黑人久久久| 在线视频中文字幕一区二区| 日韩成人dvd| |精品福利一区二区三区| 色诱视频网站一区| 国产麻豆精品95视频| 亚洲欧洲国产专区| 欧美美女一区二区三区| 91在线国内视频| 蜜桃在线一区二区三区| 国产精品丝袜一区|