961資料結構總結 樹

2021-10-10 03:43:29 字數 1623 閱讀 3475

1、鏈式儲存結構

typedef

struct bitnodebitnode,

*bitree;

2、遍歷

(1)先序遍歷

//遞迴

void

preorder1

(bitree t)

}

//非遞迴

void

preorder2

(bitree t)

else

}}

(2)中序遍歷

//遞迴

void

inorder1

(bitree t)

}

//非遞迴

void

inorder2

(bitree t)

else

}}

(3)後序遍歷

//遞迴

void

postorder1

(bitree t)

}

//非遞迴

void

postorder2

(bitree t)

else

else

}//else

}//while

}while

(4)層序遍歷

void

levelorder

(bitree t)

}

2、求樹高度

//遞迴

public

static

inthigh1

(node root)

//非遞迴

public

static

inthigh2

(node root)

if(tmp.right!=null)}}

return high;

}

3、求樹最大寬度

public

static

intmaxwidth

(node root)

k=queue.

size()

;for

(int i=

0;i(tmp.right!=null)}}

return width;

4、設一棵二叉樹各結點的值互不相同,其先序遍歷序列和中序遍歷序列分別存於兩個一維陣列a[1…n]和b[1…n]中,試編寫演算法建立該二叉樹的二叉鍊錶

bitree preincreat

(elemtype a[

],elemtype b,

int l1,

int h1,

int l2,

int h2)

961資料結構總結 排序

1 直接插入排序 void insertsort elemtype a,int n 2 折半插入排序 void insertsort elemtype a,int n for j i 1 j high 1 j a j 1 a j 統一後移元素,空出插入位置 a high 1 a 0 插入操作 3 希...

961資料結構總結 順序表

initlist l 初始化表,構件乙個空表 length l 求表長,返回表長度,即元素個數 locateelem l,e 按值查詢元素,找值為e的元素 getelem l,i 按位查詢,找第i個位置的元素 listinsert l,i,e 插入,第i個位置插入e listdelete l,i,e...

資料結構 樹

樹的概念 1.家族樹 在現實生活中,有入如下血統關係的家族可用樹形圖表示 張源有三個孩子張明 張亮和張麗 張明有兩個孩子張林和張維 張亮有三個孩子張平 張華和張群 張平有兩個孩子張晶和張磊。以上表示很像一棵倒畫的樹。其中 樹根 是張源,樹的 分支點 是張明 張亮和張平,該家族的其餘成員均是 樹葉 而...