二叉樹的四種遍歷遍歷以及查詢拷貝

2021-08-18 09:42:51 字數 877 閱讀 1634

#include#includeusing namespace std;

class node//建立節點

//初始化引數

char m_value;

node *m_left;

node *m_right;

};class tree//建立樹

//void create(node *&root)

node* create(char *&str)//利用字串建立二叉樹 }

void preorder(node *root)//前序遍歷 }

void inorder(node *root)//中序遍歷 }

void postorder(node *root)//後序遍歷 }

int size(node *root)//二叉樹的大小

int height(node *root)//二叉樹的高度 }

node *search(node *root,char k)//查詢二叉樹中的某個節點

node *parent(node *root,char k)//查詢二叉樹節點的父親節點

void copy(node*&root1,node*root)//拷貝二叉樹 }

void cengci(node*root)//層次遍歷

cout} tree t1('#');

t1.copy(t1.m_root,t.m_root);

t1.preorder(t1.m_root);

cout

cout

cout

}

二叉樹四種遍歷方式

二叉樹的四種遍歷方式 include include using namespace std 二叉樹節點的定義 class treenode 遞迴方式,每個結點只遍歷一次,時間複雜度o 1 遞迴最多呼叫n次,空間複雜度o n 先序 根 遞迴左 遞迴右 void preorder treenode r...

二叉樹的四種遍歷方式

前言最近做題用到很多次二叉樹的遍歷,因此寫這篇文章記錄二叉樹的四種遍歷方式。首先為了方便,先假設二叉樹的結構如下 struct treenode 對於程式的輸入為 3 根節點root 9 20 4 10 15 71.二叉樹的層次遍歷 層次遍歷就是依次遍歷樹的每一層。借助佇列,可以輕鬆實現。void ...

二叉樹的四種遍歷方式

二叉樹是一種很常見的資料結構,其結構如下圖 下面接受他的四種遍歷方式 前提 這裡先給出測試中的二叉樹結構,如下圖所示 該二叉樹對應的幾種遍歷方式的結果順序 先序遍歷 10 6 4 8 14 12 16 中序遍歷 4 6 8 10 12 14 16 後序遍歷 4 8 6 12 16 14 10 層次遍...