二叉樹遍歷的應用

2021-08-26 18:19:22 字數 1048 閱讀 4479

二叉樹遍歷的應用。

//求二叉樹結點個數

int size(binarytreenode *t)

//求二叉樹葉子結點個數

int leaf(binarytreenode *t)

//求二叉樹的高度

int depth(binarytreenode *t)

//交換二叉樹

void exch(binarytreenode *t)

}

//求二叉樹度為 1 結點數

int count1(binarytreenode *t)

//求二叉樹度為 2 結點數

int count2(binarytreenode *t)

//法二

int numberoftwodegree(binarytreenode *t)

//二叉樹複製

binarytreenode *copy(binarytreenode *p)

//刪除一棵二叉樹

void clear(binarytreenode *t)

}

//層次遍歷二叉樹

//好像有問題

void breadthfirstsearch(binarytreenode *t)

}//法二

//好像也有問題

void levelorder(binarytreenode *t)

}}

//判斷兩棵二叉樹是否相等

bool compare(binarytreenode *t, binarytreenode *p)

else if(t || p)

return false;

return true;

}

二叉樹的應用 二叉樹遍歷的應用

在以上討論的遍歷演算法中,訪問結點的資料域資訊,即操作visite bt data 具有更一般的意義,需根據具體問題,對bt 資料進行不同的操作。下面介紹幾個遍歷操作的典型應用。search bt,x 在bt 為二叉樹的根結點指標的二叉樹中查詢資料元素x。查詢成功時返回該結點的指標 查詢失敗時返回空...

二叉樹及其應用 二叉樹遍歷

給定二叉樹的廣義表表示,構造二叉樹並輸出二叉樹的四種遍歷順序。輸入說明 輸入僅一行,該行僅由 以及大小寫字元構成的二叉樹的廣義表表示,字串長度不超過100。輸出說明 在接下來的四行中依行輸出二叉樹的四種遍歷 輸入樣列 a b d,c e,f h 輸出樣列 abdcefh dbaecfh dbehfc...

二叉樹的遍歷應用2

若二叉樹為空,返回null 若二叉樹只有乙個結點,直接刪除 否則遞迴左右子樹。void del bitnode t else 設max是預先設定的最大值,初始值為0,判斷是否有比其更大的值並修改。void maxvalue bitnode t,datatype max maxvalue t lchi...