先看看实现了哪些功能吧?
(1)构造二叉树
(2)遍历二叉树结点
(3)搜索二叉树结点
(4)删除二叉树结点
(5)判断结点是否存在二叉树
看看源码:
package hk.inso.service;
/**
* Created by IntelliJ IDEA.
* Date: 8/17/15 11:45 PM
* Author: Richar...
分类:
其他好文 时间:
2015-08-20 01:28:40
阅读次数:
182
1.介绍顺序存储容器 : string、vector、list、deque关联存储容器:map底层采用的是树型结构,多数使用平衡二叉树实现,查找某一值是常数时间,遍历起来效果也不错, 只是每次插入值的时候,会重新构成底层的平衡二叉树,效率有一定影响. set 和map都是无序的保存元素,只能通过它提...
分类:
其他好文 时间:
2015-07-20 23:20:06
阅读次数:
146
定义
二叉树(binary tree)是n(n>=0)个结点的有限集合,该集合为空集合称为空二叉树,或者有一个根结点和两棵互不相交的,分别称为树根结点的左孩子树和右孩子树组成.
二叉树的特点
每个结点最多有两棵子树,所以二叉树总没有度大于2的结点
左子树和右子树是有顺序的,次数不能任意颠倒
即使树中某结点只有一棵子树,也要区分是左子树还是右子树
特殊的二叉树1. 斜树...
分类:
其他好文 时间:
2015-07-07 09:40:05
阅读次数:
170
原题如下:
Given a binary tree, return the bottom-up level order traversal of its nodes’ values. (ie, from left to right, level by level from leaf to root).我的算法:
1. 首先获得树的高度
2. 层序递归遍历二叉树实现如下:package leet...
分类:
其他好文 时间:
2015-06-29 15:02:29
阅读次数:
130
一般二叉树的查找是通过遍历整棵二叉树实现,效率较低。二叉查找树是一种特殊的二叉树,可以提高查找的效率。二叉查找树又称为二叉排序树或二叉搜索树。 二叉查找树的定义 二叉排序树(Binary Search Tree)又称二叉排序树(Binary Sort Tree),或者是一颗空二叉树,或者...
分类:
编程语言 时间:
2015-05-28 23:09:56
阅读次数:
204
1.Map接口 Map接口定义的集合又称查询表,用于存储所谓"Key-Value"映射对。Key可以看成是Value的索引,作为Key的对象在集合中不可以重复。 根据内部结构的不同,Map接口有多种实现类,其中常用的内部类为hash表实现的HashMap和内部为排序二叉树实现的TreeMap。2.....
分类:
其他好文 时间:
2015-05-11 20:02:03
阅读次数:
126
树是编程中一种常用的数据结构。以前在学习数据结构时,总想着如何实际地实现出一颗二叉树出来,现在参考了《数据结构与算法分析 JAVA语言描述 第二版》之后,照着书中的例子实现了一颗二叉树,个人感觉书上面的二叉树实现操作比较复杂。下面将我学到的一些知识记录下来:1,定义树的操作的基本接口,其中不包括插入...
分类:
编程语言 时间:
2015-04-25 22:33:25
阅读次数:
250
如何在二叉树中定位结点的位置?
指路法定位结点:根据生活中的经历:左拐、右拐、左拐、、、
大致思路:
通过根结点与目标结点的相对位置进行定位,这种方法可以避开二叉树递归的性质“线性定位”
C描述:利用bit位进行指路
#define BT_LEFT 0
#define BT_RIGHT 1
typedef unsigned long BT_pos;
...
分类:
其他好文 时间:
2015-04-25 16:41:39
阅读次数:
169
二叉树的定义见:二叉树实现:公式化描述二叉树最常用的描述方法是用链表或指针。每个元素都用一个有两个指针域的节点表示,这两个域为 L e f t C h i l d和R i g h t C h i d。除此两个指针域外,每个节点还有一个 d a t a域。二叉树的边可用一个从父节点到子节点的指针来描述...
分类:
其他好文 时间:
2015-03-08 16:55:00
阅读次数:
134
二叉树二叉树的抽象数据类型的接口定义publicinterfaceBinaryTree
{
finalString[]mode={"preOrder","inOrder","postOrder","levelOrder"};
booleancreateBTree(Stringgt);
booleanisEmpty();
voidtraverseBTree(Strings);
ObjectfindBTree(Objectobj);
intdepthBTree();..
分类:
其他好文 时间:
2015-03-04 19:29:46
阅读次数:
134