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

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

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

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

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); } } }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昌图县| 德兴市| 巴塘县| 宁远县| 安国市| 洞头县| 内黄县| 滁州市| 隆回县| 社旗县| 河北省| 丽江市| 全南县| 西畴县| 太仆寺旗| 东乡族自治县| 伊春市| 苗栗县| 溧阳市| 汉川市| 宜君县| 荣成市| 湄潭县| 蓬莱市| 佛冈县| 工布江达县| 营口市| 大庆市| 昔阳县| 南通市| 平谷区| 大厂| 资源县| 兴业县| 南乐县| 河东区| 霍山县| 南昌市| 灵璧县| 井研县| 昌邑市|