数据结构教程(java语言描述)徐孝凯主编----复习摘要05

数据结构教程(java语言描述)徐孝凯主编----复习摘要05

第五章 树和二叉树

树的性质:

1。树中的结点数等于所有结点数的度数加1。

2。度为k的树中第i层上至多有k^(i-1)个结点(i>=1)。

3。深度为h的k叉树至多有(k^h-1)/(k-1)个结点。

4。具有n个结点的k叉树的最小深度为...

二叉树的性质

1。二叉树上终端结点数等于双分支结点数加1。

2。二叉树上第i层上至多有2^(i-1)个结点(i>=1)。

3。深度为h的二叉树至多有2^(h-1)个结点。

4。具有n个结点的完全二叉树的深度为...

 

二叉树的链接存储结构

结点类型定义

public class BTreeNode{

	Object element;

	BTreeNode left,right;

	public BTreeNode(Object obj) {

		element = obj;left =right=null;


	}

	public BTreeNode(Object obj,BTreeNode lt,BTreeNode rt){
		element = obj;left = lt;right = rt;
	}
}

链接存储的二叉树类

public class linkBinaryTree implements BinaryTree{
	protected BTreeNode root; //定义可继承的二叉树的树根指针(引用)
	public linkBinaryTree(){
		root = null;
	}

	//操作
	public BTreeNode getRoot(){
		return root;
	}
	...
}



 按层次遍历的时候需要使用一个队列

二叉搜索树的链接存储类的实现

 

public class linkBinarySearchTree extends linkBinaryTree implements BinarySearchTree{

	public linkBinarySearchTree(){

		super();
	}
	public Object find(final Object obj){}
	public Object update(final Object obj){}
	public boolean insert(final Object obj){}
	public boolean delete(final Object obj){}
}
 

 堆分为大根堆和小根堆

 

public class sequenceHeap implements Heap{
	final int maxSize = 10; //数组初始长度
	private Object[] heapArray; //数组声明
	private int length; //当前堆的实际长度
	//操作
	public sequenceHeap(){

		length = 0;
		heapArray = new Object[maxSize];
	}
	public sequenceHeap(int n){

	}
	....
} 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值