Given a binary tree, determine if it is
height-balanced.For this problem, a height-balanced binary tree is defined as a
binary tree in which the depth...
分类:
其他好文 时间:
2014-05-01 14:38:39
阅读次数:
454
这道题需要注意的地方有以下一些:1.
求从子树中的某节点到当前节点的最大路径不能采用递归方法,因为这个部分会被反复的调用,如果用递归,会使得之前已经计算过的节点被重复计算,使得时间复杂度特别高;2.
树中有节点的值是负数的。下面是AC代码。(我发现AC并不代表代码真的完全正确!!) 1 /** 2 ...
分类:
其他好文 时间:
2014-05-01 12:10:52
阅读次数:
274
网页的缓存由HTTP消息头中的"Cache-Control"
来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为private。其作用根据不同的重新浏览方式分为以下几种情况:(1)
打开新窗口如果指定cache-control的值为pri...
分类:
其他好文 时间:
2014-05-01 06:51:33
阅读次数:
273
[cpp]view plaincopy为树形控件添加弹出式菜单,并跟踪所选择的项[cpp]view
plaincopy动态弹出式菜单[cpp]view
plaincopy//获取当前右键的位置CPointpt;GetCursorPos(&pt);m_tree.ScreenToClient(&pt);...
分类:
其他好文 时间:
2014-05-01 02:45:10
阅读次数:
341
分布式消息系统Jafka入门指南之二作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs三、Jafka的目录结构1、安装tree命令$ sudo yum install tree2、查看目录$ tree -L 1
.
?..?? bin
?..?? conf
?..?? data
?..?? lib
?..?? LICENSE
?..?? logs
?..?...
分类:
其他好文 时间:
2014-04-29 13:38:21
阅读次数:
448
我感觉伸展树越来越模版了,没想到这么轻易的就过了。。。
把光标位置标记为pos
MOVE:pos++或者pos--
INSERT:把光标旋转至根部,然后把光标后一个字母旋转至根的右子树,然后把insert的内容插入到root的右子树的左子树
ROTATE:把光标旋转至根部,然后把光标后一个字母旋转至根的右子树,然后把rev[root10]取反
GET:得到光标位置的后...
分类:
其他好文 时间:
2014-04-29 13:31:22
阅读次数:
498
在红黑树基础上设计map容器,在设计map时,可以明显利用的map模板类中KEY,VALUE,KEYOFVALUE的灵活运用
不多说,代码如下:
//my_map.h
#ifndef MY_MAP_H_INCLUDED
#define MY_MAP_H_INCLUDED
#include //for pair
#include"my_rb_tree.h"
using std::pair;...
分类:
其他好文 时间:
2014-04-29 13:27:21
阅读次数:
443
set容器是以红黑树容器为基础实现的,在其基础上稍加改变接口即可
#ifndef MY_SET_H_INCLUDED
#define MY_SET_H_INCLUDED
#include"my_rb_tree.h"
namespace juine
{
template
struct identity
{
const T& operator()(cons...
分类:
其他好文 时间:
2014-04-29 13:16:20
阅读次数:
376
预处理每个结点的子结点的个数sons , 则对x的询问可由sons[x]- sigma( sons[v] ) (v是到x距离为d的点)得到
怎么快速的找到这些v呢? 注意到距离x为d的点肯定在树的同一层....
可以对树进行dfs时记录每个结点时间戳的同时把每一层的结点保存下来,然后对每一层维护一个前缀和 如果v是x下面子结点那么v的时间戳肯定在x的范围内,这样就可以二分確定出前缀和的范围了....
分类:
其他好文 时间:
2014-04-28 10:34:42
阅读次数:
434
伸展树模版真的好长好长。。。
cut a b c:把第a-1个数伸展到根节点,把第b+1个数伸展到a的右子树,然后把ch[ch[root][1][0]]拿掉,放在剩下的树的第c个节点下。
flip a b:把第a-1个数伸展到根节点,把第b+1个数伸展到a的右子树,然后翻转ch[ch[root][1][0]];
由于会出现操作两边的情况,所以加了两个-1节点。
注意:
1,输出的时候要注...
分类:
其他好文 时间:
2014-04-27 22:31:19
阅读次数:
295