資料結構與演算法複習 ADT樹基本操作

2021-09-22 01:13:37 字數 2078 閱讀 5971

複習記錄,高手無視,關於 二叉搜尋樹的一些基本操作。

//code by pnig0s1992 

//date:2012,3,28

#include 

#include 

typedef

intelement_type;  

typedef

struct

treenode * ptrtreenode;  

typedef

struct

treenode * adttree;  

struct

treenode  

;  void

makeempty(adttree mytree);

//將adt樹置空

ptrtreenode find(element_type x,adttree mytree);

//查詢指定元素的結點並返回

ptrtreenode findmin(adttree mytree);

//查詢adt樹中的最小值

ptrtreenode findmax(adttree mytree);

//查詢adt樹中的最大值

ptrtreenode insert(element_type x,adttree mytree);

//向adt樹中插入結點

ptrtreenode delete(element_type x,adttree mytree);

//adt樹中刪除指定結點

adttree createtree(element_type x);

//構造乙個新adt樹並返回根節點指標

intmain(

intargc,

char

** ar**)  

//構建adt樹

adttree createtree(element_type x)  

//向adt樹中插入乙個結點

ptrtreenode insert(element_type x,adttree mytree)  

else  }

else

if(x < mytree->element)  

else

if(x > mytree->element)  

return

mytree;  

}  //找到adt樹最小結點

ptrtreenode findmin(adttree mytree)  

else

if(mytree->pleftchild == null)  

else

}  //找到adt樹最大結點

ptrtreenode findmax(adttree mytree)  

else

if(mytree->prightchild == null)  

else

}  //刪除指定adt樹結點

ptrtreenode delete(element_type x,adttree mytree)  

else

if(x < mytree->element)  

else

if(x > mytree->element)  

else

if(mytree->pleftchild && mytree->prightchild)  

else

else

if(mytree->prightchild == null)  

free(tempcell);  

}  return

mytree;  

}  ptrtreenode find(element_type x,adttree mytree)  

else

if(x < mytree->element)  

else

if(x > mytree->element)  

else

return

mytree;  

}  void

makeempty(adttree mytree)  

return

;  }  

資料結構與演算法 多項式ADT

陣列實現宣告 typedef struct polynomial 初始化為0 void zeropolynomial polynomial poly 相加 void addpolynomial const polynomial poly1,const polynomial poly2,polynom...

資料結構複習 樹

形式化定義 對於樹 t d是包含n個結點的有限集合,當n 0時為空樹,否則關係r滿足以下條件 遞迴定義 樹是由n個結點組成的有限集合,其中 插入或刪除 遍歷二叉樹是有限的節點的集合 同樹完全二叉樹 完全二叉樹的性質 森林 樹轉化為二叉樹 在所有相鄰兄弟節點 森林中每棵樹的根節點可看成是兄弟節點 之間...

資料結構與演算法基本

棧的演算法 計算機內部空間是連續儲存的,但是可以通過邏輯上改變記憶體的物理結構,資料在記憶體上呈現出的是連續分布狀態 主要的典型資料結構 在實現棧這種資料結構時,首先要定義乙個陣列和乙個變數。陣列中所包含的元素個數就是棧的大小 棧中最多能存放多少個資料 變數中則儲存著乙個索引,指向儲存在棧中最頂端的...