⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 binarytree.java

📁 java 实现常用数据结构(链表
💻 JAVA
字号:
/**
 *
 *
 *
 */
 
 package dreamer.util;
 
 public class BinaryTree<T>
 { 	
 	private T data;
 	private BinaryTree left;
 	private BinaryTree right;
 	
    public BinaryTree(T elem)
    {
    	data = elem;
    }
 	
 	public boolean setLeft(BinaryTree leftNode)
 	{
 		if(left==null)
 		{
 			left = leftNode;
 			return true;
 		}
 		return false;
 	}
 	
 	public boolean setRight(BinaryTree rightNode)
 	{
 		if(right==null)
 		{
 			right = rightNode;
 			return true;
 		}
 		return false;
 	}
 	
 	public BinaryTree getLeft()
 	{
 		return left;
 	}
 	
 	public BinaryTree getRight()
 	{
 	    return right;
 	}
 	
 	public T get()
 	{
 		return data;
 	}
 	
 	public void set(T elem)
 	{
 		data = elem;
 	}
 	
 	public int depth()
 	{
 	   int leftDepth = 0;
 	   int rightDepth = 0;
 	   if(left==null && right==null)
 	       return 1;
 	   if(left!=null)
 	       leftDepth = left.depth()+1;
 	   if(right!=null)
 	   	   rightDepth = right.depth()+1;
 	   if(leftDepth>rightDepth)
 	   	   return leftDepth;
 	   return rightDepth;
 	}
 	
 	public int level(T elem)
 	{
 		if(data.equals(elem))
 			return 1;
 		int leftLevel = 0;
 		int rightLevel = 0;
 		if(left!=null)
 			leftLevel = left.level(elem);
 		if(right!=null)
 			rightLevel = right.level(elem);
 		if(leftLevel>=1)
 			return leftLevel+1;
 		if(rightLevel>=1)
 			return rightLevel+1;
 		return 0;
 	}
 	
 	public boolean contains(T elem)
 	{
 		 if(data.equals(elem))
 		 	return true;
 		 if(left!=null && left.contains(elem))
 		 	return true; 		 	
 		 if(right!=null && right.contains(elem))
 		 	return true;
 		 return false;
 	}
 	
 	public int count()
 	{
 		int leftCount = 0;
 		int rightCount = 0;
 		if(left!=null)
 		  leftCount = left.count();
 		if(right!=null)
 		  rightCount = right.count();
 		return leftCount+rightCount+1;
 	}
 	
 	public void traverse()
 	{
 		System.out.print(data+" ");
 		if(left!=null)
 			left.traverse();
 		if(right!=null)
 			right.traverse();
 	}
 
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -