//用满二叉树存储,从n/2处开始递归向上调整(n/2后均为叶子节点,无需调整)使得根最大 //满二叉树顺序存储,左子2i,右子2i+1; #include<stdio.h>#include<stdlib.h>#include<time.h>#define ARRAY_SIZE 1000#defin ...
分类:
其他好文 时间:
2016-05-06 02:05:49
阅读次数:
137
二叉树是我们学习数据结构阶段一个重要的知识点,二叉树又被分为满二叉树,完全二叉树和其它三种来学习,所谓的满二叉树是指我们的二叉树的每一个非叶子节点一定含有左孩子和右孩子,而完全二叉树则是指我们的树的叶子节点必须连续的分布在树的左边。今天,我们来探索一下如何..
分类:
其他好文 时间:
2016-05-05 07:18:44
阅读次数:
240
题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 思路:二叉搜索树中序遍历就是有序序列,把整个树拆成3部分,根,左子树,右子树。连接起来应该是,左子树的最右叶子节点的右指针指向根,根的左指针指向左子树最右节点,根的右指针指向右子 ...
分类:
其他好文 时间:
2016-05-03 22:16:08
阅读次数:
183
题目63小猴子下落时间限制:3000 ms | 内存限制:65535 KB难度:3描述有一颗二叉树,最大深度为D,且所有叶子的深度都相同。所有结点从左到右从上到下的编号为1,2,3,·····,2的D次方减1。在结点1处放一个小猴子,它会往下跑。每个内结点上都有一个开关,初始全部关闭,当每次有小猴子 ...
分类:
其他好文 时间:
2016-05-03 21:59:57
阅读次数:
183
B-树和B+树的应用:数据搜索和数据库索引 B-树 1 .B-树定义 B-树是一种平衡的多路查找树,它在文件系统中很有用。 定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树;⑵若根结点不是叶子结点,则至少有两棵子树; ⑶除根结点之外的所有非终端结点至少 ...
分类:
数据库 时间:
2016-04-30 14:12:44
阅读次数:
281
//这是我在学数据库时写的C++的B树的实现.
B树有四个性质:
1.树中每个节点最多含有2m-1的节点;
2.除了根节点外,其他每个节点至少有m-1个孩子;
3.若根节点不是叶子节点则至少有2个孩子(即整个树只有根节点);
4.所有叶子节点都在同一层
#include
using namespace std;
static const int m = 3; //定义最小度为3
s...
分类:
编程语言 时间:
2016-04-29 19:29:15
阅读次数:
157
1.模型
(1)整体模型函数如下:
其中 k 表示树的数量,f 表示每棵树的预测函数;
(2)截取到第 t 棵树的模型函数表示如下:
2.训练
(1)每次训练一棵树,目标函数如下:
其中第一项是损失函数,第二项是防止过拟合;N表示样本数,T表示所有树的叶子数目,t 表示训练第 t 棵树,w 表示叶子的输出值;
(2)泰勒展开(二阶展开):...
分类:
其他好文 时间:
2016-04-29 15:50:16
阅读次数:
204
堆数据结构是一种数组对象,它可以被视为一棵完全二叉树结构。堆结构的二叉树存储:大堆:每个父节点的都大于孩子节点;小堆:每个父节点的都小于孩子节点。建堆:由于堆被视为完全二叉树,故在h-1层找到第一个(从后往前找)非叶子结点,进行堆的下调建大堆时,从下往上依次判..
分类:
其他好文 时间:
2016-04-28 07:08:16
阅读次数:
1382
Rb树简介 红黑树是一棵二叉搜索树,它在每个节点上增加了一个存储位来表示节点的颜色,可以是Red或Black。通过对任何一条从根到叶子简单 路径上的颜色来约束,红黑树保证最长路径不超过最短路径的两倍,因而近似于平衡。(性质3、性质4保证了红黑树最长的路径不超过最短路径的两倍) 如图所示: 红黑树是满 ...
分类:
其他好文 时间:
2016-04-28 00:18:18
阅读次数:
248
对《大话数据结构》P313~P340—二叉排序树和平衡二叉树,进行了自己的理解并完善了代码。 一、二叉排序树 对如下二叉排序树进行中序遍历,就可以得到有序的序列{35,37,47,51,58,62,73,88,93,99}。 查找: 插入: 删除: 1、删除的是叶子节点 2、删除的结点仅有左孩子或右 ...
分类:
编程语言 时间:
2016-04-27 17:09:26
阅读次数:
164