P2P流媒体开源项目介绍
1. PeerCast
2002年成立,最早的开源P2P流媒体项目。PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据。节点离根节点越远,传输时延就越大,所以树的深度应该尽可能短,但节点有限的上行带宽限制了节点的宽度。
2. Tribler
2008年开始的项目,既能实现BT下载,还能播放视频的点播和直...
分类:
其他好文 时间:
2014-12-07 16:31:34
阅读次数:
155
分区图的布局比较简单,本章介绍一下分区图的参数。分区图布局为:d3.layout.partition()其函数有6个。nodes()将根数据传入后,得到的节点的数组,每个节点添加8个参数:parent - 父节点children - 子节点value - 表示节点的大小,由下面 value() 函数指定的值,父节点的值等于子节点值的和depth - 节点的深度x - 节点的x方向的坐标(不一定指x...
分类:
Web程序 时间:
2014-12-07 16:30:16
阅读次数:
237
4.6 设计一个算法,找出二叉查找树中指定结点的“下一个”结点(也即中序后继)。可以假定每个结点都含有指向父节点的连接。思路:有两种情况:1)如果该结点存在右子树,则中序后继即为右子树中最小的结点。 2)如果该结点不存在右子树,则后继结点为使得所给结点在其祖先结点的左子树上的第一个祖先结点...
分类:
其他好文 时间:
2014-12-06 14:04:20
阅读次数:
124
POJ 1182 食物链 添加一个维护当前节点与父节点关系的信息,每次压缩时更新关系,另外join的时候也要根据当前节点和父节点关系以及两个父节点关系更新; 单case,不用EOF处理。 # include const int maxn = 50005;
int n, k;
int p[maxn];...
分类:
其他好文 时间:
2014-12-05 22:37:38
阅读次数:
161
Watcher 设置是开发中最常见的,需要搞清楚watcher的一些基本特征,对于exists、getdata、getchild对于节点的不同操作会收到不同的 watcher信息。对父节点的变更以及孙节点的变更都不会触发watcher,而对watcher本身节点以及子节点的变更会触发watcher,具体参照下表。...
分类:
其他好文 时间:
2014-12-04 17:59:22
阅读次数:
247
后序遍历就行。//寻找二叉树两个结点的最低共同父节点TreeNode *FindFirstCommonParentNode(TreeNode *pRoot, TreeNode *pNodeOne, TreeNode *pNodeTwo){ if (NULL == pRoot) { ...
分类:
其他好文 时间:
2014-12-01 23:48:45
阅读次数:
173
优先队列包括二叉堆、d-堆、左式堆、斜堆、二项队列等
1、二叉堆
堆是一棵被完全填满的二叉树,有可能例外的是在底层,底层上的元素从左到右填入。这样的树称为完全二叉树。
堆序的性质:在一个堆中,对于每一个节点X,X的父亲的关键字小于(或等于)X中的关键字,根节点除外(它没有父节点)。完全二叉树可以用数组实现。...
分类:
其他好文 时间:
2014-11-30 20:10:24
阅读次数:
205
性质: 节点非黑即红 根和叶子节点是黑(这里说的叶子节点指填充后的树的叶子节点,NIL节点) 红节点的父节点是黑节点 任意一个节点到以他为根的叶子节点所经过的黑节点数目(不包括自身,但包括叶子节点)的个数是一样。 红黑树可以在O(lgn)时间内完成查询搜索操作,另插入操作需要最多2次旋转,删除操作需...
分类:
其他好文 时间:
2014-11-29 00:11:59
阅读次数:
194
数的构造同插入函数那篇文章的构造。主要增加了查找父节点和删除的函数,同时为了方便删除了插入的函数。获取父节点的函数如下: 1 BTree *getFather(BTree *root,BTree *child) 2 { 3 if (root == child) 4 retur...
分类:
其他好文 时间:
2014-11-28 00:51:27
阅读次数:
233
RepositoryItemCheckEdit默认有三种状态,选中状态、未选中状态和半选中状态(半选中状态通常用在TreeList中如果父节点下的子节点有选中的有未选中的,则父节点状态为半选中状态)。 通常情况下我们只用选中和非选中状态即可,修改方式如下: 默认情况下,RepositoryItemC...
分类:
其他好文 时间:
2014-11-27 12:32:14
阅读次数:
611