题目描述 给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *ri ...
分类:
其他好文 时间:
2017-04-23 10:43:52
阅读次数:
113
知识点-Tarjan 割点:在一个无向连通图中,如果删掉点 x 后图的连通块数量增加,则称点 为图的割点。 条件: 1)对于搜索树上的非根结点 x ,如果存在子节点 i 满足 F[i]>=D[x] ,即 i 向上无法达到 x 的祖先,则 x 为割点,这一点比较能够理解。 2)对于搜索树上的根节点x, ...
分类:
其他好文 时间:
2017-04-21 14:24:34
阅读次数:
159
二叉搜索树 与 双向链表 代码(C++)本文地址: http://blog.csdn.net/caroline_wendy题目:输入一颗二叉搜索树, 将该二叉搜索树转换成一个排序的双向链表.要求不能创建不论什么新的结点, 仅仅能调整数中结点的指针的指向.方法: 使用中序遍历每个结点, 并进行连接, ...
分类:
编程语言 时间:
2017-04-20 21:32:47
阅读次数:
268
//判断二叉树是否是平衡搜索树 //中序遍历判断即可 ...
分类:
其他好文 时间:
2017-04-19 10:09:50
阅读次数:
209
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 分析:采用递归的思想,先找出根节点,左子树元素都必须比根节点小,右子树节点都比根节点大,否则返回false. 得到子树(子序列)的两种方法: ①用下标把数组 逻 ...
分类:
其他好文 时间:
2017-04-18 21:19:18
阅读次数:
160
map 容器存储键值对,提供了很好的一对一的关系。 在内部,元素总按特定的规则有序,通常用二叉搜索树实现。 下面是使用示例: map与multimap差别仅仅在于其中的 'multiple'——允许一个键对应多个值。 多维map 好像之前发过这题 #include <cstdio> #include ...
分类:
编程语言 时间:
2017-04-17 14:31:54
阅读次数:
236
set 容器存储互不相同的元素,使之有序的容器。 在一个set中,元素的值不能修改(总是常量元素),但它们可以被插入或删除。 内部通常由自平衡二叉搜索树实现。 下面是示例代码 set与multiset的差别在于multiset允许多个元素的值相同。 若使用multiset,erase(x)会删除所有 ...
分类:
编程语言 时间:
2017-04-15 22:32:48
阅读次数:
264
代码的思想和图片参考:好大学慕课浙江大学陈越、何钦铭的《数据结构》 我们首先介绍一下什么是二叉搜索树和二叉平衡树: 二叉搜索树:一棵二叉树,可以为空;如果不为空,满足以下性质1. 非空左子树的所有键值小于其根结点的键值。2. 非空右子树的所有键值大于其根结点的键值。3. 左、右子树都是二叉搜索树。二 ...
分类:
其他好文 时间:
2017-04-15 21:42:42
阅读次数:
124
题目链接:PAT L2-004. 这是二叉搜索树吗? 题意: 给你一串数,问你是否是一个二叉搜索树或者是镜像的先序遍历。 如果是,就输出这棵树的后序遍历。 题解: 根据二叉搜索树的性质,模拟判断一下。 1 #include<bits/stdc++.h> 2 #define F(i,a,b) for( ...
分类:
其他好文 时间:
2017-04-14 14:34:44
阅读次数:
188
在我们公司的DB规范中,明确规定: 对于这项规定,很多研发小伙伴不理解。本文就来深入简出地分析MySQL索引设计背后的数据结构和算法,从而可以帮你释疑如下问题: B-tree(多路搜索树,并不是二叉的)是一种常见的数据结构。使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度 ...
分类:
数据库 时间:
2017-04-11 17:25:36
阅读次数:
630