麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > C > 正文

先序遍歷二叉樹(shù)的遞歸實(shí)現(xiàn)與非遞歸實(shí)現(xiàn)深入解析

2020-01-26 15:57:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1、先序遍歷二叉樹(shù)  遞歸實(shí)現(xiàn)
思想:若二叉樹(shù)為空,返回。否則
1)遍歷根節(jié)點(diǎn);
2)先序遍歷左子樹(shù);
3)先序遍歷右子樹(shù);

代碼:

復(fù)制代碼 代碼如下:

template<typename elemType>
void PreOrder(nodeType<elemType> *root) 

    if(root==NULL) 
        return ; 
    visit(root->data); // visit the data
    PreOrder(root->lchild); //遞歸調(diào)用,先序遍歷左子樹(shù) 
    PreOrder(root->rchild); //遞歸調(diào)用,先序遍歷右子樹(shù) 


2、先序遍歷二叉樹(shù) 非遞歸實(shí)現(xiàn)
思想:二叉樹(shù)的非遞歸先序遍歷,先序遍歷思想:先讓根進(jìn)棧,只要棧不為空,就可以做彈出操作, 每次彈出一個(gè)結(jié)點(diǎn),記得把它的左右結(jié)點(diǎn)都進(jìn)棧,記得右子樹(shù)先進(jìn)棧,這樣可以保證右子樹(shù)在棧中總處于左子樹(shù)的下面。

前序遍歷二叉樹(shù)的非遞歸算法思想
建立棧 Stack;
t 指向根;
當(dāng) t 不空 或 Stack 不空時(shí)反復(fù)做:
      若 t 不空,訪問(wèn)t,t 入 棧;t 指向左子女;
      否則:出棧頂元素到 t 中;
      t 指向右子女;
結(jié)束

復(fù)制代碼 代碼如下:

void PreOrder_Nonrecursive(BinaryTree T)     //先序遍歷的非遞歸   

    if(!T) return ;   
    stack<BinaryTree> s; 
    s.push(T); 
    while(!s.empty()) 
    { 
        BinaryTree temp = s.top(); 
        visit(temp->data); 
        s.pop(); 
        if(temp->rchild) 
            s.push(temp->rchild); 
        if(temp->lchild) 
            s.push(temp->lchild); 
    } 


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 蜜桃一本色道久久综合亚洲精品冫 | 毛片大全在线观看 | 国产精品99久久久久久久vr | 97zyz成人免费视频 | 久草在线观看福利 | 午夜a狂野欧美一区二区 | 亚洲一区成人在线 | 黄色电影免费网址 | 国产91一区二区三区 | 国产91精品一区二区麻豆亚洲 | 国产成人午夜高潮毛片 | 久草欧美| 午夜精品久久久久久久96蜜桃 | 欧美城网站地址 | av在线视| 精品国产高清一区二区三区 | 看免费一级毛片 | 精品久久久久久中文字幕 | 欧美在线一级 | 日韩中文字幕一区二区三区 | 电影一级毛片 | 久久久www视频 | 国产午夜精品久久久久 | 久久久国产精品网站 | 午夜精品久久久久久中宇 | 日韩视频www | 日日噜噜夜夜爽 | 全黄裸片武则天一级第4季 九色p | 久久精品成人影院 | 在线亚洲免费视频 | 日韩黄色三级视频 | 久久国产精品久久久久久电车 | 精品亚洲二区 | 日本在线不卡一区二区 | 欧美a级在线免费观看 | 农村少妇吞精夜夜爽视频 | 亚洲无限资源 | 午夜视频在线免费播放 | 日本一道aⅴ不卡免费播放 视屏一区 | 精品久久久一二三区播放播放播放视频 | 欧美日韩综合视频 |