最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++非遞歸隊列實現(xiàn)二叉樹的廣度優(yōu)先遍歷

 更新時間:2015年07月11日 09:13:56   作者:優(yōu)雅先生  
這篇文章主要介紹了C++非遞歸隊列實現(xiàn)二叉樹的廣度優(yōu)先遍歷,實例分析了遍歷二叉樹相關(guān)算法技巧,并附帶了兩個相關(guān)算法實例,需要的朋友可以參考下

本文實例講述了C++非遞歸隊列實現(xiàn)二叉樹的廣度優(yōu)先遍歷。分享給大家供大家參考。具體如下:

廣度優(yōu)先非遞歸二叉樹遍歷(或者說層次遍歷):

void widthFirstTraverse(TNode* root) {
  queue<TNode*> q;   // 隊列
  q.enqueue(root);
  TNode* p;
  while(q.hasElement()) {
   p = q.dequeue();  // 隊首元素出隊列
   visit(p);     // 訪問p結(jié)點
   if(p->left)
     q.enqueue(p->left);
   if(p->right)
     q.enqueue(p->right);
  } 
}

附帶兩個相關(guān)示例:

1. 遞歸先序遍歷二叉樹

void preTraverse(TNode* root) {
  if(!root)
   return;
  visit(root);
  preTraverse(root->left);
  preTraverse(root->Right);
}

2. 非遞歸先序遍歷二叉樹

void preTraverseNonRecursive(TNode* root) {
  stack<TNode> stack;  // 棧
  stack.push(root);
  TNode* p;
  while(!stack.isEmpty()) { // 棧非空
   p = stack.pop();
   visit(p);
   if(p->pRight)
     s.push(p->pRight);
   if(p->pLeft)
     s.push(p->pLeft);
  }
}

希望本文所述對大家的C++程序設(shè)計有所幫助。

相關(guān)文章

  • C語言中指針常量和常量指針的區(qū)別

    C語言中指針常量和常量指針的區(qū)別

    本文主要介紹了C語言中指針常量和常量指針的區(qū)別,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解C++中變量的初始化規(guī)則

    詳解C++中變量的初始化規(guī)則

    這篇文章詳細介紹了關(guān)于C++中變量的初始化規(guī)則,C++如果不對變量初始化,可能會導(dǎo)致很多后果,所以學(xué)習C++變量初始化規(guī)則就很重要了,下面一起來看看
    2016-08-08
  • c++ 預(yù)處理之正整型實現(xiàn)方法

    c++ 預(yù)處理之正整型實現(xiàn)方法

    這篇文章主要介紹了c++ 預(yù)處理之正整型實現(xiàn)方法,需要的朋友可以參考下
    2017-07-07
  • C++與C語言的區(qū)別你知道嗎

    C++與C語言的區(qū)別你知道嗎

    這篇文章主要為大家詳細介紹了C++與C的區(qū)別,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • 詳解C語言中數(shù)據(jù)的存儲

    詳解C語言中數(shù)據(jù)的存儲

    這篇文章主要為大家介紹了C語言中數(shù)據(jù)的存儲,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • C++設(shè)計模式之代理模式

    C++設(shè)計模式之代理模式

    這篇文章主要介紹了C++設(shè)計模式之代理模式,本文講解了什么是代理模式、代理模式的使用場合、代理模式的實現(xiàn)代碼等內(nèi)容,需要的朋友可以參考下
    2014-10-10
  • C語言中邏輯運算符與條件運算符的學(xué)習教程

    C語言中邏輯運算符與條件運算符的學(xué)習教程

    這篇文章主要介紹了C語言中邏輯運算符與條件運算符的學(xué)習教程,條件運算符問號即三目運算符使用起來十分方便,需要的朋友可以參考下
    2016-04-04
  • C++實現(xiàn)圖片轉(zhuǎn)base64的示例代碼

    C++實現(xiàn)圖片轉(zhuǎn)base64的示例代碼

    Base64就是一種 基于64個可打印字符來表示二進制數(shù)據(jù)的表示方法,本文主要為大家詳細介紹了如何使用C++實現(xiàn)圖片轉(zhuǎn)base64,需要的可以參考下
    2024-04-04
  • Qt實現(xiàn)帶字數(shù)限制的文字輸入框

    Qt實現(xiàn)帶字數(shù)限制的文字輸入框

    這篇文章介紹了Qt實現(xiàn)帶字數(shù)限制文字輸入框的方法,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2022-04-04
  • C語言 文件操作解析詳解及實例代碼

    C語言 文件操作解析詳解及實例代碼

    這篇文章主要介紹了C語言 文件操作解析詳解及實例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-11-11

最新評論

阿城市| 牙克石市| 鄂托克旗| 泗水县| 龙南县| 滨州市| 武义县| 安顺市| 柳河县| 康马县| 灵川县| 宜州市| 临沂市| 黔西县| 固阳县| 桦南县| 尼勒克县| 兰溪市| 无棣县| 阿鲁科尔沁旗| 嘉义县| 皋兰县| 太仓市| 大宁县| 自治县| 武夷山市| 姜堰市| 汽车| 九龙县| 麦盖提县| 陈巴尔虎旗| 大丰市| 土默特右旗| 新沂市| 满城县| 南丹县| 乌苏市| 墨竹工卡县| 晋宁县| 建宁县| 南溪县|