中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

池州市住房和城鄉(xiāng)建設(shè)委員會網(wǎng)站模板建站的網(wǎng)站

池州市住房和城鄉(xiāng)建設(shè)委員會網(wǎng)站,模板建站的網(wǎng)站,信陽電子商務(wù)網(wǎng)站建設(shè),自己建設(shè)一個網(wǎng)站步驟二叉樹的遍歷可以有:先序遍歷、中序遍歷、后序遍歷先序遍歷:根、左子樹,右子樹中序遍歷:左子樹、根、右子樹后序遍歷:左子樹、右子樹、根下面是我畫圖理解三種遍歷:二叉樹里都是分為左子樹和右子樹。分治思…

二叉樹的遍歷可以有:先序遍歷、中序遍歷、后序遍歷

先序遍歷:根、左子樹,右子樹

中序遍歷:左子樹、根、右子樹

后序遍歷:左子樹、右子樹、根

下面是我畫圖理解三種遍歷:

二叉樹里都是分為左子樹和右子樹。分治思想:1 將任務(wù)分給2 和 4 ,2又分給 3 和NULL,3又分給 NULL NULL 同樣:4將任務(wù)分給 5 和6 ,5又分給NULL NULL ,6也是分給NULL NULL;

以上就是二叉樹的三種遍歷方法

void PrevOrder(BTNode* root)//先序遍歷
{if(root->data == NULL){printf("NULL");return;}printf("%d",root->data);PrevOrder(root->left);//不為空,就分為左子樹和右子樹PrevOrder(root->right);//
}

下面是我畫的遞歸圖:

二、下面是實現(xiàn)二叉樹的一些計算:

先手動創(chuàng)建和連接結(jié)點,使他成為二叉樹。然后用代碼實現(xiàn),先序遍歷、中序遍歷、后序遍歷。

typedef int BTDateType;
typedef struct BinaryTreeNode
{BTDateType data;struct BinaryTreeNode* left;struct BinaryTreeNode* right;
}BTNode;BTNode* BuyBTNode(BTDateType data)
{BTNode* node = (BTNode*)malloc(sizeof(BTNode));if (node == NULL){perror("malloc error");return;}node->data = data;node->left = node->right = NULL;return node;
}

這是隨便手動連接的結(jié)點,以便于我們測試

接著我們可以寫遍歷順序

//先序遍歷
void PrevOder(BTNode* root)
{if (root == NULL){printf("NULL ");return;}printf("%d ", root->data);PrevOder(root->left);PrevOder(root->right);
}//中序遍歷
void InOrder(BTNode* root)
{if (root == NULL){printf("NULL ");return;}InOrder(root->left);printf("%d ", root->data);InOrder(root->right);
}//后序遍歷
void PastOrder(BTNode* root)
{if (root == NULL){printf("NULL ");return;}PastOrder(root->left);PastOrder(root->right);printf("%d ", root->data);
}

從上可以看出,結(jié)果和我們上面自己寫的一樣;

我們將遍歷函數(shù)寫完后,接著就算結(jié)點的數(shù)目:

//求結(jié)點數(shù)目
int TreeSize1(BTNode* root)
{if (root == NULL){return 0;}size++;//全局變量TreeSize1(root->left);TreeSize1(root->right);
}
//求節(jié)點數(shù)目
int TreeSize2(BTNode* root)
{return root == NULL ? 0 :TreeSize2(root->left) + TreeSize2(root->right) + 1;//+1是加根節(jié)點自己
}

求結(jié)點數(shù),也是分治思想:

從根結(jié)點開始,最后結(jié)點需要匯總到根節(jié)點。要想知道,自己結(jié)點下還有多少結(jié)點,可以向自己的孩子得到;

三、求二叉樹的高度/深度

我以空樹的高度為0;

同樣是分治思想:

//int TreeHeight(BTNode* root)
//{
//    if (root == NULL)
//    {
//        return 0;
//    }
//    //這一種會造成很大的資源浪費
//    return TreeHeight(root->left) > TreeHeight(root->right) ? TreeHeight(root->left)+1 :
//        TreeHeight(root->right)+1;
//}int TreeHeight(BTNode* root)
{if (root == NULL){return 0;}int leftHeight = TreeHeight(root->left); int rightHeight = TreeHeight(root->right);return leftHeight > rightHeight ? leftHeight + 1 :rightHeight + 1;
}

二叉樹的深度大概就是這樣

http://www.risenshineclean.com/news/57267.html

相關(guān)文章:

  • 寧波網(wǎng)站設(shè)計建站服務(wù)公司搜索引擎優(yōu)化的作用是什么
  • 網(wǎng)站優(yōu)怎么做百度一下百度網(wǎng)頁版
  • 做網(wǎng)站二維碼網(wǎng)絡(luò)推廣怎么學
  • 免費搭建業(yè)務(wù)網(wǎng)站阿里云云服務(wù)平臺
  • 服務(wù)器租用網(wǎng)站模板寧波seo網(wǎng)絡(luò)推廣軟件系統(tǒng)
  • php裝飾公司網(wǎng)站源碼云南seo網(wǎng)站關(guān)鍵詞優(yōu)化軟件
  • 哪個網(wǎng)站做黑色星期五訂酒店活動如何做網(wǎng)站設(shè)計
  • 咖啡網(wǎng)站設(shè)計模板有什么好的網(wǎng)站嗎
  • 常州市城鄉(xiāng)建設(shè)學院網(wǎng)站如何在百度推廣自己的產(chǎn)品
  • 有沒有專門做牛仔的網(wǎng)站谷歌引擎搜索入口
  • 政府網(wǎng)站建設(shè)運維情況自查沈陽seo關(guān)鍵詞排名優(yōu)化軟件
  • 建設(shè)醫(yī)療網(wǎng)站怎樣注冊一個自己的平臺
  • 臨沂網(wǎng)站建設(shè)設(shè)計公司小紅書廣告投放平臺
  • 做早餐燒菜有什么網(wǎng)站seo綜合查詢是什么
  • 內(nèi)網(wǎng)網(wǎng)站建設(shè)方案廣告視頻
  • 杭州做網(wǎng)站需要多少錢站長統(tǒng)計網(wǎng)站統(tǒng)計
  • 艾辰做網(wǎng)站黑帽seo技巧
  • 有沒有專業(yè)收費做網(wǎng)站優(yōu)化的數(shù)字化營銷
  • 塘下網(wǎng)站建設(shè)深圳網(wǎng)絡(luò)推廣公司排名
  • 凡科網(wǎng)做的網(wǎng)站保存后就上傳了嗎深圳網(wǎng)絡(luò)推廣渠道
  • 網(wǎng)站制作哪家實惠seo權(quán)重優(yōu)化軟件
  • 深圳網(wǎng)站維護優(yōu)化百度識別圖片找圖
  • 單位加強網(wǎng)站建設(shè)網(wǎng)絡(luò)推廣自學
  • 徐州做網(wǎng)站需要多少錢seo自媒體培訓
  • 如何寫代碼做網(wǎng)站百度關(guān)鍵詞排名軟件
  • 滕州做網(wǎng)站網(wǎng)店代運營騙局流程
  • 做網(wǎng)站的公司都是小公司百度關(guān)鍵詞模擬點擊軟件
  • 好的網(wǎng)站具備什么條件找代寫文章寫手
  • 衡陽網(wǎng)站建設(shè)制作全媒體運營師報名入口
  • 房產(chǎn)資訊什么網(wǎng)站做的好廈門百度推廣開戶