用C++代码实现了一个红黑树,大家可以一起学习学习,有问题也可以直接给我留言
2024-03-07 11:38:34 17KB 红黑树
1
Java-红-黑-树 Java 1.7 中红黑树的实现 此代码扩展自 Mark Allen Weiss 在和维基百科(特别是移除操作)
2022-12-21 21:08:36 14KB Java
1
qdac里的红黑树 改了下,delphi7能用,还有哈希列表,不错
2022-12-18 03:20:17 205KB rbtree hashtable delphi
1
使用java语言编程实现了平衡二叉树、二叉树、二叉搜索树、红黑树四种树相关的数据结构,还实现了多种排序算法。并且是在J2EE下实现的。
2022-12-09 14:14:30 8.65MB 红黑树 排序算法 数据结构
1
中科大算法导论实验,包括代码报告和可执行文件,vc++6.0下编程,c语言代码。 实验部分 一、要求 1.算法设计与分析1班,10月21日(周日)开始上课,晚上19:00-22:00。连续八周每周日在明德楼103实验室上实验课。 2.实验要求独立完成,发现抄袭则实验为0分(包括网上的代码),没有分组。 3.要求提交实验源码,可执行程序以及实验报告。实验报告包括程序的输入,输出,结果,演示界面,算法语言描述,原理等。要求把所有实验打包成一个rar文件后提交到教学系统,并且命名文件格式为学号+姓名(eg. 学号_NAME),不符合命名格式的一律不批改。 4.程序语言不做特别要求,C、C++、JAVA均可 5.实验提交截止时间: 2012/12/16 23:59:00 之前 二、题目 1.(必做题) 常见排序算法的实现与性能比较 问题描述:实现合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序算法 实验要求: A. 在随机产生的空间大小分别为 N = 10, 1000,10000,100000 的排序样本(取值为[0,1])上测试以上算法。 B.结果输出: 1) N=10时,排序结果。 2) N=1000,10000,100000时,对同一个样本实例,不同排序完 成所需的时间。 3) N=1000,10000,100000时,每个排序用不同的样本多试验几 次(最低5次)得出平均时间,比较不同排序算法所用的平均时间。 文档要点:总结对各种排序的性能分析。 2. (必做题) 红黑树、二叉搜索树的实现和性能比较 问题描述: 实现红黑树、二叉搜索树相关算法:插入(红黑树涉及树的调整:左旋、右旋等),删除,搜索(指定Key值节点)。 另外,红黑树实现计算树黑高的算法。 实验要求: 1).插入测试,输入 8,11,17,15,6,1,22,25,27,建立红黑树,按照 红黑树信息输出方式 输出整棵红黑树以及黑高。 2).删除测试,删除1)中红黑树中Key=15的节点,按照 红黑树信息输出方式 输出调整后的整棵红黑树以及黑高。 3).随机产生300,000个不同自然数Key值(1-300,000,每个数出现一次,出现顺序随机),建立红黑树,查找Key=15000的节点,输出查找花费时间。 用上面的数据,建立二叉搜索树,查找Key=15000的节点,输出查找花费时间。 4). 重复3-5次3)中操作,求各自平均时间。 5). 在1)-4)的红黑树算法基础上修改完成P307 14.1-4算法 OS_Key_Rank(T,k). 输入 1,2,3,4,5,6,7,8 建树, k=6, 输出OS_Key_Rank的返回值。 文档要点:总结红黑树和二叉搜索树在查找上的性能分析,描述此类算法的应用。 附: 红黑树信息输出方式(右图) 3. (选做题) 最长递增子序列 问题描述: 随机生成小于等于n的自然数的一个序列,输出其最长递增子序列(任意一个即可)。 n 分别取 1000,3000,10000。 例: n=5 随机序列为 5 1 4 2 3,正确输出为1 2 3,即长度为3的递增子序列。 提示:参考LCS,思考能否达到时间复杂度(O(nlogn)) 文档要点:描述动态规划思想,总结时间和空间复杂度。
1
在学习c++的过程中实现的红黑树,功能比较完善,无优化..
2022-09-14 15:10:27 5KB 红黑树 c++
1
目录 一、为什么要有红黑树? 二、什么是“平衡二叉查找树”? 三、红黑树的定义 四、为什么说红黑树是“近似平衡”的? 五、红黑树为什么综合性能好? 六、实现红黑树 1、插入操作的平衡调整 2、删除操作
2022-09-12 09:00:20 1.71MB 技术
1
红黑树(Red Black Tree) 是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组。 红黑树是在1972年由Rudolf Bayer发明的,当时被称为平衡二叉B树(symmetric binary B-trees)。后来,在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的“红黑树”。 红黑树是一种特化的AVL树(平衡二叉树),都是在进行插入和删除操作时通过特定操作保持二叉查找树的平衡,从而获得较高的查找性能。 它虽然是复杂的,但它的最坏情况运行时间也是非常良好的,并且在实践中是高效的: 它可以在O(log n)时间内做查找,插入和删除,这里的n 是树中元素的数目。
1
2.所有结点存储一个关键字 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树 2.根结点的儿子数为[2, M] 3.除根结点以外的非叶
2022-08-09 09:00:58 164KB 数据结构
1
从内核中单独将红黑书和链表抽出来,可以直接include使用,不需要依赖其他头文件。
2022-06-15 14:00:52 5KB Android linuxkernel Datastructure rbtree
1