自定义横向listView的左右滚动边界问题...
分类:
其他好文 时间:
2015-06-04 17:05:38
阅读次数:
141
求无向图的关节点dfn[]来存点的深度数在一张深度优先搜索树中,如果u和v是两个顶点,且生成树中u是v的祖先,则必有dfn[u]2,1->3,2->3中,dfs时1->2->3,这里dfs树中的边为1->2,2->3,那么1->3就是回边;(1)如果点u是dfs生成树的根,那么u至少有2个子女。理由...
分类:
编程语言 时间:
2015-06-03 23:09:07
阅读次数:
492
B树即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;如: B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结点关键字...
分类:
其他好文 时间:
2015-05-31 22:50:05
阅读次数:
105
1、概念二叉搜索树性质:设x是二叉搜索树的一个节点,那么:a) 对x左子树中任意节点y, y.key = x.key2、数据结构 1 struct TreeNode 2 { 3 TreeNode(int key): left(NULL), right(NULL), parent(NULL),...
分类:
编程语言 时间:
2015-05-31 12:24:32
阅读次数:
146
这篇博客主要讲解B树及其插入删除操作,并给出操作的流程图以达到清晰易懂的目的,尽管标题是从二叉排序树到平衡二叉树再到红黑树系列3,没有B树二字,但他们都是动态查找树,所以我将他们归为一个系列。
B树是为磁盘或其他直接存取的辅助存储设备而设计的一种平衡搜索树。它以一种很自然的方式推广了二叉搜索树,B树与红黑树的不同之处在于B树结点的孩子不限于最多为2,而是可以有数个到数千个不定。因为结点的分支更多...
分类:
编程语言 时间:
2015-05-29 20:23:55
阅读次数:
183
一般二叉树的查找是通过遍历整棵二叉树实现,效率较低。二叉查找树是一种特殊的二叉树,可以提高查找的效率。二叉查找树又称为二叉排序树或二叉搜索树。 二叉查找树的定义 二叉排序树(Binary Search Tree)又称二叉排序树(Binary Sort Tree),或者是一颗空二叉树,或者...
分类:
编程语言 时间:
2015-05-28 23:09:56
阅读次数:
204
题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。比如输入下图中左边儿茶搜索树,则输出转换后的排序双向链表。 10 / \ 6 14 / \ / \ 4 8 12 164=6=8=10=12=1...
分类:
其他好文 时间:
2015-05-27 09:50:59
阅读次数:
133
B树
B树,也叫B-树,就是B-Tree(BalanceTree),是一种多路搜索树,它在文件系统中很有用,它不是二叉树,而是m(m>=3)叉树,具有以下特征:
树中每个节点至多有m个结点;
根节点子树个数在2---m;
非根节点子树个数在 m/2(m向上取整)-----m
排列规则:所有叶节点在同一层,按照递增次...
分类:
其他好文 时间:
2015-05-26 18:59:16
阅读次数:
147
题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。
二叉树结点的定义如下:
struct BinaryTreeNode{
int m_nValue;
BinaryTreeNode *m_pLeft;
BinaryTreeNode *m_pRight;
};解法如下:
//返回双向链表的头结点
BinaryTreeNo...
分类:
其他好文 时间:
2015-05-26 00:22:39
阅读次数:
154
set是STL中一种标准关联容器(vector,list,string,deque都是序列容器,而set,multiset,map,multimap是标准关联容器),它底层使用平衡的搜索树——红黑树实现,插入删除操作时仅仅需要指针操作节点即可完成,不涉及到内存移动和拷贝,所以效率比较高。set,顾名...
分类:
编程语言 时间:
2015-05-25 18:09:01
阅读次数:
221