转自:http://www.tuicool.com/articles/vI7biee 目录 1 红黑树的介绍 2 红黑树的应用 3 红黑树的时间复杂度和相关证明 4 红黑树的基本操作(一) 左旋和右旋 5 红黑树的基本操作(二) 添加 6 红黑树的基本操作(三) 删除 转自:http://www.t ...
分类:
其他好文 时间:
2017-02-07 18:54:07
阅读次数:
161
用晚自习学了一下splay模板,没想象中那么难,主要是左旋和右旋可以简化到一个函数里边,减少代码长度。。。 ...
分类:
其他好文 时间:
2016-12-04 00:37:36
阅读次数:
218
要求:已知一个一维数组arr,现在要求将它向左旋转n个位置。方法一:假设允许开辟一个临时空间,那么问题就变得简单了,可以开辟一个跟arr长度相同的空间,然后隔n个位置不断添加元素即可,思路比较简单,下面是代码实现:voidRotateLeft1(vector<int>&arr,constints..
分类:
编程语言 时间:
2016-11-09 13:03:51
阅读次数:
185
一、什么是红黑树???
红黑树首先是一棵搜索二叉树,树中的每一个结点的颜色不是黑色就是红色。它的特性如下:
1、根节点是黑色
2、每一个结点不是黑色就是红色
3、不能有连续的两个红色结...
分类:
其他好文 时间:
2016-10-31 14:11:23
阅读次数:
229
写了好久,感觉插入和删除麻烦些,插入也就4种情况,但只要写两个函数,左左和右右的,左右的情况是以根节点的左子树为头进行一次右右旋转,使它变成左左的情况,再左左旋转下就下,右左的也一样; 另外就是删除,先是判断要删除的节点右儿子是否为空,是空,直接删,否则找到它最左边的儿子来替代它,然后就是高度的更新 ...
分类:
其他好文 时间:
2016-10-17 21:02:52
阅读次数:
196
问题一:将字符串“abcde”翻转成“edcba”;用start表示字符串的首地址,end表示字符串的最后一个字符的指针。 问题二:将字符串“I am a student.”翻转,但是每个单词内的字符顺序不变,变成“student. a am I”。 问题三:将字符串"abcdefg"左旋2位成字符 ...
分类:
其他好文 时间:
2016-09-16 21:20:15
阅读次数:
176
汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。 ...
分类:
其他好文 时间:
2016-09-01 22:48:52
阅读次数:
218
汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它! 思路:三 ...
分类:
其他好文 时间:
2016-09-01 16:18:55
阅读次数:
140
题目一:输入一个英文句子,翻转句子中单词的顺序,但单词内字啊的顺序不变。为简单起见,标点符号和普通字母一样处理。 举例说明 例如输入字符串”I am a student. ”,则输出”student. a am I”。 解题思路 第一步翻转句子中所有的字符。比如翻转“I am a student. ...
分类:
其他好文 时间:
2016-08-23 16:20:30
阅读次数:
160