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

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

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

2019-11-09 21:01:48
字體:
來源:轉載
供稿:網友

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); } } }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 米泉市| 芦溪县| 临夏县| 建昌县| 奉新县| 广宁县| 双峰县| 从江县| 南涧| 新源县| 澄江县| 中阳县| 柳林县| 庆城县| 内黄县| 黑河市| 甘谷县| 丹棱县| 昌江| 饶河县| 穆棱市| 金寨县| 喜德县| 石河子市| 双鸭山市| 北安市| 宁城县| 大兴区| 依兰县| 临江市| 威宁| 凯里市| 固阳县| 东兰县| 鞍山市| 新乡市| 当阳市| 新余市| 通化市| 顺平县| 顺平县|