国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

數據結構之 排序二叉樹總結

2019-11-10 16:52:14
字體:
來源:轉載
供稿:網友

1.查找數,2.查找最小數(遞歸方法),3.查找最大數(迭代方法) 4.知道如何插入一個數,就知道如何創建一個排序二叉樹廢話不多說上函數代碼 x是要插入的數,root是對應待插入的樹,5.如何刪除一個數。

ST *find(int x, ST *root)/*查找x這個數*/{ while(root) { if(x > root->data) root = root->rt; else if(x < root->data) root = root->lt; else return root; } return 0;}ST *minfind(ST *root)/*遞歸方法*/{ if(!root) return NULL; else if(!root->lt) return root; else midfind(root->lt);}ST *maxfind(ST *root)/*迭代的方法*/{ if(root) { while(root->rt) { root = root->rt; } } return root;}ST *insert(int x, ST *root){ if(root == NULL) { root = (ST *)malloc(sizeof(ST)); root->data = x; root->lt = NULL; root->rt = NULL; } else { if(x > root->data) root->rt = insert(x, root->rt); else root->lt = insert(x, root->lt); } return root;}ST *delete(int x, ST *root){ ST *p; if(root) { if(x > root->data) { root->rt = delete(x, root->rt); } else if(x < root->data) { root->lt = delete(x, root->lt); } else { if(root->lt && root->rt) { p = minfind(root-rt); root->data = p->data; root->rt = delete(root->data, root->rt); } else { p = root; if(!root->lt) root = root->rt; else if(!root->rt) root = root->lt; free(p); } } }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南京市| 东光县| 黑龙江省| 隆安县| 灵寿县| 南岸区| 方城县| 金秀| 建德市| 桑日县| 徐汇区| 莱州市| 晴隆县| 若尔盖县| 吴堡县| 筠连县| 东光县| 丹凤县| 鸡东县| 涪陵区| 台东市| 班玛县| 尚义县| 左云县| 永兴县| 阿拉善右旗| 新密市| 花垣县| 靖宇县| 镇平县| 滨海县| 陆河县| 南宁市| 宁国市| 虹口区| 赤城县| 儋州市| 阿拉善左旗| 化州市| 商都县| 黑龙江省|