【算法与数据结构】查找二叉树的实现
生活随笔
收集整理的這篇文章主要介紹了
【算法与数据结构】查找二叉树的实现
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
(轉(zhuǎn)載請(qǐng)注明出處:http://blog.csdn.net/buptgshengod)
1.題目介紹
? ? 二叉樹(shù)是一種基本的數(shù)據(jù)結(jié)構(gòu)。查找二叉樹(shù)是一種方便與查找,刪除,插入等功能的二叉樹(shù),它要求每個(gè)父節(jié)點(diǎn)的左分支小于父節(jié)點(diǎn),右分支大于父節(jié)點(diǎn)。下面我們來(lái)實(shí)現(xiàn)下面這個(gè)查找二叉樹(shù)。2.java代碼實(shí)現(xiàn)
public class BinaryTree {private Node root;public BinaryTree(){root=null;}/** 定義內(nèi)部節(jié)點(diǎn)*/public class Node{private Node left;private Node right;private int data;public Node(int data){this.left = null;this.right = null;this.data = data;}}/** 生成二叉樹(shù)的函數(shù)*/public void BuildTree(Node node,int data){if(root==null){root=new Node(data);}else{if(data<node.data){if(node.left==null){node.left=new Node(data);}else{BuildTree(node.left,data);}}else{if(data>node.data){if(node.right==null){node.right=new Node(data);}else{BuildTree(node.right,data);}}}}}/*** 前序遍歷* @param node*/public void preOrder(Node node){if(node != null){System.out.println(node.data);preOrder(node.left);preOrder(node.right);}}public static void main(String[] args){int[] a={1,4,26,8,77,43,75,};BinaryTree tree=new BinaryTree(); for(int i=0;i<a.length;i++){tree.BuildTree(tree.root, a[i]);}tree.preOrder(tree.root);} }前序遍歷輸出結(jié)果
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專(zhuān)家共同創(chuàng)作,文字、視頻、音頻交互閱讀
總結(jié)
以上是生活随笔為你收集整理的【算法与数据结构】查找二叉树的实现的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【算法与数据结构】中缀表达式转为后缀表达
- 下一篇: 我的2013-一个dota半职业玩家向码