二叉樹的基本操作

2021-07-14 13:47:24 字數 572 閱讀 7809

#include#include#include#define mal (node*)malloc(sizeof(node))

typedef struct node

node;

node *create()//建立乙個二叉樹

return p;

}void print(node *p)//先序輸出二叉樹

}void levelorder(node*p)//按層遍歷

}void spreorder(node *t)//非遞迴先序遍歷

if (p->lchild != null)

p = stack[top]; }}

int leafnum = 0;

void totalnum(node *p)//計算總節點數

}int depth(node *p)//計算深度

}bool search(node *p, char x)

//abc00de0g00f000

int main(void)

二叉樹的操作大多建立在遞迴的基礎之上,所以需要稍微了解下遞迴!

二叉樹基本操作

tree.h ifndef tree h define tree h include typedef int element 定義二叉樹 typedef struct nodetreenode void preorder treenode root 遞迴前序遍歷 void inorder treen...

二叉樹基本操作

一.二叉樹的定義 二.二叉樹的建立 定義一棵無資料的二叉樹 6 int left size 7 int right size 為了操作簡便,我們定義一棵不需要儲存資料的二叉樹,只要能儲存節點之間的邏輯關係就行,所以用兩個陣列來表示。left i 第i個節點的左子節點的序號 right i 第i個節點...

二叉樹基本操作

include include define maxsize 100 typedef char elemtype typedef struct node btnode void createbtnode btnode b,char str 由str串建立二叉鏈 j ch str j btnode f...