#include
#include
typedef int KeyType;
//元素的定义
typedef struct{
KeyType key;
}DataType;
//二叉排序树的类型定义
typedef struct Node{
DataType data;
struct Node *lchild,*rchild;
}BiTreeNode,*BiTree;
//二叉排序树的查找...
分类:
编程语言 时间:
2015-08-13 06:32:29
阅读次数:
142
题目Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.思路题目要求一个二叉排序树的两个节点的公共父节点,说通俗点,其实就是这两个节点所在的分支是从哪里开始分叉的。求出这个分叉点。对于二叉排序树,它的一个特点就是:一个节点的左子树节点都小于该节点,而...
分类:
其他好文 时间:
2015-08-11 21:34:48
阅读次数:
137
ACM 所有算法
数据结构
栈,队列,链表
哈希表,哈希数组
堆,优先队列
双端队列
可并堆
左偏堆
二叉查找树
Treap
伸展树
并查集
集合计数问题
二分图的识别
平衡二叉树
二叉排序树
线段树
一维线段树
二维线段树
树状数组
一维树状数组
N维树状数组
字典树
后缀数组,后缀树
块状链表
哈夫曼树
桶,跳跃表...
分类:
编程语言 时间:
2015-08-11 16:13:16
阅读次数:
357
平衡二叉树定义
平衡二叉树简称平衡树,又称为AVL树。若一棵二叉树的任何节点的左右子树高度差最多相差1,此二叉树即是平衡二叉树。把二叉树的任何节点的左子树高度减去右子树高度定义为该节点的平衡因子。二叉平衡树的平衡因子只能是1、0或者-1。
平衡二叉树是对二叉搜索树(又称为二叉排序树)的一种改进。二叉搜索树有一个缺点就是,树的结构是无法预料的,随意性很大,它只与节点的值和插入的顺序有关系,往往得...
分类:
其他好文 时间:
2015-08-10 13:42:54
阅读次数:
189
一、综述
二叉查找树或者是一棵空树,或者是具有下列性质的二叉树:
(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;
(2)若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值;
(3)左、右子树也分别为二叉排序树;
(4)没有键值相等的节点...
分类:
编程语言 时间:
2015-08-10 12:05:04
阅读次数:
177
【109-Convert Sorted List to Binary Search Tree(排序链表转换成二叉排序树)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题 Given a singly linked list where elements are sorted in ascending order, convert it to a height balanc...
分类:
编程语言 时间:
2015-08-10 08:14:28
阅读次数:
157
1、什么是二叉搜索树
二叉搜索树(Binary Search Tree)是一棵有序的二叉树,所以我们也可以称它为二叉排序树(不知道二叉树的童鞋,先看看二叉树:传送门)。具有以下性质的二叉树我们称之为二叉搜索树:若它的左子树不为空,那么左子树上的所有值均小于它的根节点;若它的右子树不为空,那么右子树上所有值均大于它的根节点。它的左子树和右子树分别也为二叉搜索树。
2、二叉搜索树的结...
分类:
其他好文 时间:
2015-08-10 07:07:01
阅读次数:
126
数据结构之--二叉树查找定义:它是一棵树,或者具有以下性质的树。 若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值;若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值; 它的左、右子树也分别为二叉排序树;图解:???????#include#includetypedef int...
分类:
其他好文 时间:
2015-08-09 22:25:03
阅读次数:
191
二叉树:一个根节点,每个节点下挂着最多2个子节点。、概念:度:结点的分支数,二叉树度为2。深度:树的层次。二叉排序树:二叉树的基础上,每个节点上都有一个数字,节点上的数字都比右节点上的大。应用场景:基于内存的排序数据结构,写入时将数据写入到对应的位置。数据可能会出现倾斜,可以想到数字写入顺序如果不是...
分类:
其他好文 时间:
2015-08-09 17:08:11
阅读次数:
132
二叉查找树定义
二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均不小于它的根结点的值; 它的左、右子树也分别为二叉排序树。
二叉排序树的查找过程和二叉树类似,通常采取二叉链表作为二叉排序树的存储结构。中序遍历二叉排序树可得到一个关键字的有序序列,一个无序序列可以通过构造一棵二叉排序树变成一个有序序列,构造树的过程即为对无...
分类:
其他好文 时间:
2015-08-08 18:24:57
阅读次数:
111