登陆注册
81725200000008

第8章 红黑树?

“鱼小白,快点,陪我回去!这个帮我拿着!”,小樱嘟着嘴面向周思敏,将粉红色的小书包递给周思敏。

可她毕竟面对的不是鱼小白,而是这个社会阅历相当丰富的周思敏。

“我?算了吧,我还有事,今天要去社团,你先回去吧”,周思敏出示着前桌同学的邀请函,拖着胖嘟嘟的身子准备向教室门口走去。

“呵呵,那你今天别想来我家,来了,我也把你赶出去!看你怎么办!哼!”,小樱翘着嘴,歪着脑袋,用食指指向周思敏,似乎要对周思敏施以严刑。

周思敏自然不会硬抗,毕竟他还没弄清楚鱼小白的身份,除了小樱家,已别无去处。他掂量了一会儿,走到小樱的旁边,笑眯眯地说着:

“要不这样?你跟我一起去怎样?参加社团,用不了多长时间的?”

小樱摆出一副不屑的模样,

“什么社团呀?我妈可是让我监督着你呢?说是叔叔说你很调皮,真不知道会惹出什么事情来。”

“程序设计社团,嘿嘿”,周思敏不知所措地挠了挠脑袋,转身将小樱的书包背上,“别想了,先去吧”

“就当去玩喽”,小樱斜着眼看了一下周思敏,“带路!”

“没问题”,周思敏走在小樱的前面,偌大的身躯竟然会被一个女孩欺负,更何况都是学渣!

他们穿过教学楼的走廊,穿过种着几颗樱桃树的花园,西边的太阳照在他们胖嘟嘟的小脸蛋上,让本是通红的脸蛋变得像柿子一样橙黄。

只见前面一个穿着蓝格子连衣裙、身材匀称的小女孩走过来,

“嗨,又让你小弟给你干活了?”,她伸出纤细的右手,向小樱打着招呼。

“他自愿的,什么叫我让他呢”,小樱瞥了一眼周思敏,微笑地向那个女孩说着。

“要不借我用一下?正好,我书桌上还有一大堆学习书籍呢,嘿嘿”

“我们还有事,改天吧”

“那改天哦”,女孩说完,朝着花园的另一个方向走去。

周思敏有些好奇地向后看去,矫健的步伐、高挑的身材、纤细而又柔弱的背影,不知不觉中陷入沉思。这......女神呀!而且看气质,似乎有点文艺气息。不说别的,单纯这一点来说,就足够让周思敏拜倒在她的石榴裙下。

“看什么看,还不带我去!”,小樱放大嗓子说着。

“呵......你看看你......”,周思敏不屑地迈着步子向前走着。

“看我什么!”,小樱有些生气地说道。

“没看你什么,马上就到了”

“呵呵”,小樱跟在后面,拍了以下周思敏的脑袋。

901教室布满了各种电脑以及电脑硬件,周思敏往前径直地走去,只见一个戴着黑色大圆眼眶的小男生在电脑桌前面敲打这键盘,空悠悠的教室不断回荡着噼里啪啦的机械声。

周思敏出于礼貌,敲了敲侧开着的教室门,

“咚”

“咚”

“咚”

那个男生依然在那敲打着键盘。

“咚”

“咚”

“咚”

小樱可等不了那么久,一脚把门踢开,大喊着:“你笨呀,鱼小白!没见人家戴着耳机的嘛?”

周思敏有些不好意思地低着头,小声嘀咕着:“这不是没仔细看吗?”

“进去呀,还愣着干嘛!”

周思敏偷瞪了一眼小樱,才往里面走去。

“嗨,同学你好”,周思敏走到那台电脑桌旁边,拍了拍那名男生的肩膀。

“嗯?请问你是?没看到我正在忙吗?”

“我们是来参加社团的”,周思敏指着身后的小樱,“就我们两个”

“先等一下吧”

周思敏将邀请函摆放在电脑桌的右上角,有些好奇地盯着显示屏,小樱跟着偷瞄起来。

“这怎么这么眼熟?”,

周思敏眯着眼皮,眼前一片模糊,

“这是?这是?”,他一遍又一遍地回想毕生见过的画面,

“难道这是......”

“难道这就是传说中面试的葵花宝典之一,红黑树!”,竟情不自禁地叫出声来。

“你叫什么叫,吓我一跳”,小樱踢了鱼小白一腿,看样子是真的被他吓住了。

周思敏自是不在意,眼睛瞪地极大,他有种莫名地兴奋感,这种兴奋感是来自他经历过的一个面试。

当时,两个面试官坐在他的对面,面带微笑着看着他,当时他有些慌张,毕竟面试只准备了一周。

面试官指着前面摆放着的一张面试题。

周思敏走向前,拿着试题卷仔细地掂量了一番,翻来覆去,只有一道大题呀。

他仔细地盯着那个由红黑相间的圆连线组成的树层结构的彩色图,

“哇擦擦,这不就是我刚才在路上看的内容吗?简直不能再幸运了”,周思敏露出幸福的微笑。开始思考起来。

“根节点是黑色,嗯”

“叶子节点是黑色,嗯”

“红色节点的两个子节点都是黑色,嗯”

“任意节点到其每个叶子节点的所有路径上分布着相同的黑色节点”

“哇擦擦,红黑树呀,就是了!”,周思敏有些兴奋地默念道。

而题目是让他写出红黑树的插入和查询操作,定义数据结构,这还不简单,四年的老司机,这个都不会的吧,白开这么多年车了呀!

他有些癫狂地抄起家伙写了起来:

定义数据结构:

Struct node {

Enum {

Int Red,

Int Black

}color,

Int value,

Struct* Node left=null,

Struct* Node right=null,

Struct* Node parent=null

}Node

Struct BinaryTree {

Node* rootNode

}BinaryTree

int main(){

BinaryTree *bt;

Node rootNode ={

Black,

12,

null,

null

}

bt->rootNode =&rootNode;

Return 0;

}

bool insert(BinaryTree &bt, Node *node){

If(bt->rootNode == null){

Return false;

}

Int flag =0;//0:left;1:right

Node *tmpNode = bt->rootNode;

While(tmpNode)

{

If(tmpNode->value > Node->value){

If(tmpNode->left == null){

flag = 0;

Break;

}

tmpNode = tmpNode->left;

}else if(tmpNode->value < Node->value){

If(tmpNode->right == null){

flag = 1;

Break;

}

tmpNode = tmpNode ->right;

}else{

Return false;

}

}

node ->color = RED;

Node* uncleNode;

If(tmpNode -> color == BLACK){

If(flag == 0){

tmpNode->left = node;

}else if(flag == 1){

tmpNode->right = node;

}

Return true;

}else if(tmpNode -> color ==RED){

If(flag == 0){

uncleNode = tmpNode->right;

}else if(flag == 1){

uncleNode = tmpNode->left;

}

If(uncleNode->color == RED){

tmpNode->color=BLACK;

uncleNode->color=BLACK;

If(flag == 0){

tmpNode->left = node;

}else if(flag == 1){

tmpNode->right =node;

}

Return true;

}else if(uncleNode->color == BLACK){

If(flag == 0){

Node* tparent;

tmpNode->parent->left = tmpNode->right;

tmpNode->right = tmpNode->parent;

tparent = tmpNode->parent->parent;

tmpNode->parent ->parent = tmpNode;

tmpNode->parent = tparent;

tmpNode->left = node;

tmpNode->color=BLACK;

tmpNode->right->color=RED;

Return true;

}else if(flag == 1){

Node* tparent;

tmpNode->right = node->left;

tparent=tmpNode->parent;

node->left =tmpNode;

tparent->left = node;

node->parent=tparent;

tmpNode->parent = node;

Return true;

}

}

}

}

他回想起来,确实是这样,看着眼前苦思冥想的小男生,周思敏终于忍不住了,他拍了下那个小男生,一行一行代码地指示着,丝毫没有遗漏。

“滴滴”

主人,主人,恭喜获得10点经验.

当前经验:

语文:1

数学:17

英语:0

体育:0

记忆力:0

离系统升级还有982个经验点,

加油哦!升级可解锁学霸礼包哦!

旁边的小樱有点惊呆地看着,似乎眼前的这个人不像是她过去见到的那个鱼小白了!

同类推荐
  • TFBOYS之南星顾北辰

    TFBOYS之南星顾北辰

    那些我给你写过的情书,都已经微微泛黄。我们都没变,也都变了。
  • 精灵对战特区

    精灵对战特区

    训练师学院,对战都市,草原,沙漠,森林,山川,河流……这一片曾经失落的大陆在秘境的影响下获得了各种适合精灵生活的环境。这里是精灵特区,是所有训练师的圣地。来自平行世界的杨莫拿到了特区的训练师学院的入学资格。成为世界第一的训练师从制霸对战特区开始!(关键词,精灵,精灵宝可梦,宠物小精灵,神奇宝贝,口袋妖怪)
  • 岁月与你共深沉

    岁月与你共深沉

    风很念旧停在谁的肩头,抚过思念再到回忆问候。时光随你走,从此不回头。当初说好要一直站在我身后,很久很久,可最后只留我一人茫然独守。你走了,那些时光也走了,都走了,我哭的再累也没有人安慰。好在你曾是我的念念不忘,也不负那年剩夏相遇一场。也许时光末端总有人值得你踮起脚尖,伸手拥抱。
  • 高中青春笔记

    高中青春笔记

    高中,全新而又平凡的生活,三年的生活,情感的交融,你我他之间的竞争,直到大学生活的开始。
  • 漫威世界里的生化危机

    漫威世界里的生化危机

    依琳在穿越到DNF的世界之后,又穿越到了漫威的世界里。在这里,无限战争刚刚结束,不过跟剧情中不一样的是,灭霸他并没有成功的消减宇宙中的一半生命,反而是将无限宝石给打爆了。而好不容易在地狱厨房里安居的依琳,突然发现,这个地球好危险啊!先是发现吸血鬼的存在,然后是鼠祸、蝗灾、狂暴巨兽、鲨卷风等等危机,最后,这个世界居然还爆发了丧尸危机!依琳;嘤嘤嘤,地球好危险,我想回阿拉德大陆!其他人众;最危险的是你好吧!
热门推荐
  • 家庭盆花栽培手册(家庭万宝全书)

    家庭盆花栽培手册(家庭万宝全书)

    虽然人们都很爱花,也爱养花,但是很多人并不善于养护花卉,一次两次失败之后,甚至产生不敢再养的想法。然而植物是我们生活中必须的一部分,因此,本书旨在带领大家进入花卉世界的大门,了解市场上常见花卉的种类以及每种花卉的形态特征(花、茎、叶、果)、习性(光照、温度、水分、湿度、肥料)和日常养护管理内容。会详细向您介绍应该如何浇水、施肥、修剪,让爱花之人能更亲近的接触花卉,不仅能享受花卉外观的美丽,还能感受养护过程的乐趣,更自由的徜徉在花海里。
  • 妈呀玛雅之炉火

    妈呀玛雅之炉火

    简介玛雅预言中的灾难悄然到来,各国政府为安定民心封锁消息,贫民百姓毫无防备。全球性灾难一波波的袭来,集体性恐慌又将席卷全球,正确了解玛雅才可能活下去。贫嘴饭店老板和他爱逗壳子的两位好友,互相依靠挺过灾难,危难之时不忘救人。然而,正当人们庆幸劫后余生的时侯,更大的灾难发生了......玛雅预言原文,玛雅人的来历,玛雅发达的科技,玛雅失落的星球,玛雅的时空飞船壁画,一切秘密的答案,都在故事里。我来自2042,冰雪覆盖之下的--长春......我需要你的帮助......
  • 我们算朋友吗

    我们算朋友吗

    一个22岁时的回忆,写写22岁之前六年发生的事情。
  • 无缝对接

    无缝对接

    在这部名为《无缝对接》的作品集里,作家荒湖为我们塑造了名字相同的五个男人。这五个名叫周儒的男人,在不同的故事中,角色可能不尽相同,但他们的痛苦是那么相似,那么深刻,那么绝望,那么苦海无边。这些叫周儒的男人,是复杂的、自私的、狭隘的、偏执的、好色的、敏感的,粗暴的,他们同时也是单纯的、大度的、宽厚的、隐忍的、多情的、愚钝的、善良的。这是一个矛盾集合体,这也是一个个破败的、真实的、活生生的人。这样的人,可能不只是像我,或许也像你,像我们身边许许多多的人。
  • 剑皇本纪

    剑皇本纪

    能智取绝不强攻,能阴人绝不刚正面。硬拼?不存在的。打的过才打,打不过就跑。打不过还打那不是英勇,那叫傻!没错!他就是九州第一贱——林树!
  • 大宋直播

    大宋直播

    一个杀手,一个军人,一位老师,在经历了一次惊心动魄的追逐之后,莫名其妙群穿到大宋。锦绣河山,江山如画,繁荣昌盛,万邦来朝!且看他们如何玩转大宋!然而,在现代,三方人马汇集,共商拯救大计。。。
  • 天行

    天行

    号称“北辰骑神”的天才玩家以自创的“牧马冲锋流”战术击败了国服第一弓手北冥雪,被誉为天纵战榜第一骑士的他,却受到小人排挤,最终离开了效力已久的银狐俱乐部。是沉沦,还是再次崛起?恰逢其时,月恒集团第四款游戏“天行”正式上线,虚拟世界再起风云!
  • 悠瑶情

    悠瑶情

    天惟天,人为人,大道之行,始于足下......
  • 元古剑魂

    元古剑魂

    少年莫名穿越,神秘碎片显威,觉醒逆天之器,自此踏上修仙之路,斩禁地,踏天骄,傲视群雄,登临元古之巅。最黑暗的阴谋终将浮出水面,那曾经消逝的一界,正在缓缓归来......
  • 医妃锦绣

    医妃锦绣

    周盼只是去治病救人,却没想到给自己找了个麻烦。看着堵在跟前的萧君宜,再也忍不住冷着脸:“王爷,你这是恩将仇报。”萧君宜嘴角微扬:“若能娶你为妃,随你怎么说。”