日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

二叉查找树--java

發布時間:2025/3/15 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 二叉查找树--java 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
package com.test.tree;public class BinarySearchTree<T extends Comparable<? super T>> {/*定義二叉樹的節點*/private class BinaryNode<T>{public T data;public BinaryNode<T> lt;public BinaryNode<T> rt;public BinaryNode(T data) {this(data, null, null);}public BinaryNode(T data, BinaryNode<T> lt, BinaryNode<T> rt) {this.data = data;this.lt = lt;this.rt = rt;}}private BinaryNode<T> root; //定義二叉查找樹的根節點public BinarySearchTree(){ //初始化二叉查找樹root = null;}public void makeEmpty(){ //樹清空root = null;}public boolean isEmpty(){ //樹判空return root == null;}public boolean contains(T x){ //判斷是否包含某個值return contains(root, x);}public boolean contains(BinaryNode<T> root, T x){if(root == null){return false;}int compare = x.compareTo(root.data);if(compare == 0){return true;}else if(compare < 0){contains(root.lt, x);}else {contains(root.rt, x);}return false;}public T findMin(){ //獲得樹中最小值if(!isEmpty()){return findMin(root).data;}return null;}public T findMax(){ //獲得樹中最大值if(!isEmpty()){return findMax(root).data;}return null;}public void insert(T data){ //插入數據root = insert(data, root);}public void remove(T data){root = remove(data, root);}public void printTree(){if(root == null){System.out.println("empty tree");}else{printTree(root);}}/*中序遍歷*/public void printTree(BinaryNode<T> t){if(t != null){printTree(t.lt);System.out.print(t.data+"、");printTree(t.rt);}}/*** 刪除查找樹的某個節點,首先用要刪除節點的右子樹中最小值替換節點值,* 再從右子樹中刪除此節點,遞歸調用* */public BinaryNode<T> remove(T data, BinaryNode<T> t){if(t == null){return t;}int compare = data.compareTo(t.data);if(compare < 0){//插入值比根節點的值小,插入到左字數t.lt = remove(data, t.lt);}else if(compare > 0){//插入值比根節點的值小,插入到左字數t.rt = remove(data, t.rt);}else if(t.lt != null && t.rt != null){t.data = findMin(t.rt).data; //將右子樹中的最小值賦給要刪除的節點t.rt = remove(t.data, t.rt);}else{t = t.lt == null? t.rt:t.lt;}return t;}public BinaryNode<T> insert(T data, BinaryNode<T> t){if(t == null){return new BinaryNode<T>(data, null, null);}int compare = data.compareTo(t.data);if(compare < 0){//插入值比根節點的值小,插入到左字數t.lt = insert(data, t.lt);}else if(compare > 0){//插入值比根節點的值小,插入到左字數t.rt = insert(data, t.rt);}else{}return t;}public BinaryNode<T> findMin(BinaryNode<T> t){if(t == null){return t;}else if(t.lt == null){ //查找樹的左邊比節點值小,找到最左邊的節點即可return t;}else{return findMin(t.lt);}}public BinaryNode<T> findMax(BinaryNode<T> t){if(t == null){return null;}else if(t.rt == null){ //查找樹的右邊比節點值大,找到最右邊的節點即可return t;}return findMax(t.rt);}public static void main(String[] args) {BinarySearchTree<Integer> binarySearchTree = new BinarySearchTree<Integer>();binarySearchTree.insert(8);binarySearchTree.insert(4);binarySearchTree.insert(6);binarySearchTree.insert(3);binarySearchTree.insert(14);binarySearchTree.insert(10);System.out.println("最小值: "+binarySearchTree.findMin());System.out.println("最大值: "+binarySearchTree.findMax());binarySearchTree.printTree();binarySearchTree.remove(8);System.out.println();binarySearchTree.printTree();} }

?

轉載于:https://www.cnblogs.com/studyDetail/p/7152008.html

總結

以上是生活随笔為你收集整理的二叉查找树--java的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 私密视频在线观看 | av网站地址| 老女人丨91丨九色 | 美女脱了裤子让男人捅 | 亚洲视频二区 | 欧美一级大黄 | 免费小视频| 国产午夜亚洲精品午夜鲁丝片 | 日韩欧美一本 | 福利片网址 | 沟厕沟厕近拍高清视频 | 国产精品久久久久影院老司 | 成年人在线免费观看网站 | 日本精品在线看 | 婷婷综合一区 | 国产午夜精品一区二区三区四区 | 中文字幕精品一二三四五六七八 | av在线激情 | 国产精品福利电影 | freesex性hd公交车上 | 免费成人一级片 | 91麻豆成人精品国产 | 欧美国产日韩一区二区 | 亚洲av人人夜夜澡人人 | av中文天堂在线 | 伊人影片| 亚洲一级片在线观看 | 91新视频| 奇米综合网 | 亚洲精品高潮 | 一区二区网站 | 曰本毛片 | 国产拍拍拍拍拍拍拍拍拍拍拍拍拍 | 樱花视频在线免费观看 | 国产欧美精品在线 | 自拍偷拍激情小说 | 日韩在线观看视频免费 | 免费无码国产精品 | av大片网站 | 视频区图片区小说区 | 国产性猛交96 | 欧美日韩一区二区三区四区五区六区 | 超清纯大学生白嫩啪啪 | 性感美女在线观看 | 美女午夜视频 | 一区二区三区伦理 | 免费在线观看的黄色网址 | 久久久精品视频在线观看 | 日韩精品福利视频 | 亚洲一区动漫 | 欧美成人一区二区三区高清 | 一卡二卡在线观看 | 日韩爆操 | 黄色片网站免费看 | 欧美视频在线观看视频 | 日本阿v视频 | 国精品无码一区二区三区 | 无遮挡av | 丁香花电影高清在线阅读免费 | 一区二区三区高清在线 | 99re国产| 国产一二三精品 | 亚洲经典一区二区三区 | 少妇一级淫片日本 | 国产精品日韩一区二区三区 | 精品人伦一区二区三区蜜桃免费 | 最新黄色av网址 | 国产91边播边对白在线 | 美景之屋电影免费高清完整韩剧 | 国产无精乱码一区二区三区 | 一边摸内裤一边吻胸 | 久久片 | 老外黄色一级片 | 欧美毛茸茸 | 欧美日韩国产三区 | 性生活毛片 | 体感预报日剧 | 下面一进一出好爽视频 | 国产黄色大片视频 | 高h校园不许穿内裤h调教 | 欧美国产专区 | 免费在线黄网站 | 色妞色视频一区二区三区四区 | 日本一区二区三区四区在线观看 | 91久久精品一区二区别 | 精品国产91久久久久久久妲己 | 九九人人| 强迫凌虐淫辱の牝奴在线观看 | 男女啪啪网站免费 | 国产经典一区二区三区 | 亚洲视频免费看 | 欧美国产专区 | 日本一区中文 | 亚洲av片在线观看 | 中文字幕在线不卡 | 91操操操 | 大陆明星乱淫(高h)小说 | 懂色av一区二区三区蜜臀 | 青青草操|