悟空学Linux专栏----第9篇

原创 2015年07月08日 10:54:41

  研究完了什么是红黑树之后,悟空决定研究的下一个问题是:红黑树有什么特点?为什么要给这个半平衡二叉树着色呢?悟空感觉一个人研究太累了,还是去找人请教来的快。这次悟空还是想到了达人先生,悟空决定再次变成八戒来请教达人。

  “八戒”:师傅,你说红黑二叉树有什么特点啊?

  达人:红黑二叉树的最大特点就是它的算法复杂度小。采用红黑二叉树存储数据,搜索到需要搜索的数据的时间比采用其他结构存储数据搜索的时间要短很多。

  “八戒”:那么红黑树和链表的那个搜索速度更快呢?

  达人:当然是红黑树啦,链表的搜索采用的是线性的,所以时间复杂度为n,而二叉树的时间复杂度为log(n)。

  “八戒”:那么为什么内核还要实现双向链表呢?干嘛不都用红黑树呢?

  达人:红黑树的优势在于数据多的情况下,当数据比较少的时候,虽然红黑二叉树的搜索时间比双向链表快,但是效果不明显。而且红黑树的实现相对比较复杂,比较难于理解,接口也比较复杂。而双向链表却比较简单,使用方便。

  “八戒”:哦,原来红黑树和双向链表分别用于不同的场景啊。

  达人:就拿手机来打比喻吧,红黑树是苹果手机,高端、大气、上档次,而双向链表就是小米手机,便宜、性能强、性价比高。

  这时八戒从远处走来,看到达人先生在和一个人说话,八戒大喊:师傅你在和谁说话啊?

  达人摸着头自语:咦,怎么会有两个八戒的…

  悟空听到八戒的声音之后,掉头就跑了,正好一头撞进了八戒的怀里,被八戒一把抓住了,八戒一看就知道是孙悟空。

  八戒:猴哥,你这可不地道啊,怎么冒充我啊…

  悟空:呵呵,我们哥俩还分你我吗,我不就是你,你不就是我吗。

  达人:好你个猴头,上次你还没有教我七十二变呢,这次你无论如何也要教我,要不你就拜我为师。

  悟空见这形式,肯定是跑不掉,只得勉强拜了达人先生为师傅。

版权声明:本文为博主原创文章,未经博主允许不得转载。

悟空学Linux专栏----第22篇

下课之后达人感到比较开心,因为今天悟空在课堂上提了不少的问题,达人心想今晚终于可以睡一个好觉了,所以达人今晚回家之后就早早的洗澡上床了。但是正当达人快要睡着的时候突然听到了外面有砰砰的敲门声,达人起来...
  • wukonglinux
  • wukonglinux
  • 2015年07月13日 10:11
  • 169

悟空学Linux专栏----第35篇

因为悟空昨晚好好研究了一下软中断,所以悟空今天上课心里终于有底了。   悟空:Linux内核采用softirq_action结构体来表示软中断,具体结构体如下   struct softirq_a...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:12
  • 156

悟空学Linux专栏----第31篇

自从悟空答应了“2号童鞋”下节课讲解Linux系统为什么不使用C++,而使用C作为主要语言之后。悟空就头大,查阅了很多资料,最后都没有得出一个比较有说服力的结论。这让悟空很是郁闷,心想自己要食言了,最...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:07
  • 176

悟空学Linux专栏----第6篇

研究了Linux内核的链表之后,悟空第一次被Linux内核高超的设计技巧所吸引,一个简单的双向链表中竟然包含了这么多的道理。悟空深深的被这些看似简单,却十分高效的设计所震撼。所以悟空决定好好的研究一下...
  • wukonglinux
  • wukonglinux
  • 2015年07月08日 10:49
  • 191

悟空学Linux专栏----第46篇

(Linux内核同步机制之信号量)   从这篇开始就来讲讲Linux内核的同步机制吧!   首先我们来看看semaphore信号量吧;定义在   struct semaphore {   sp...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:34
  • 194

悟空学Linux专栏----第44篇

悟空讨厌关中断,关中断很暴力,但是再暴力也比导致系统异常好,所以悟空决定将所有的发送队列的自旋锁都使用关中断的自旋锁。修改完代码之后,悟空很开心,因为这是悟空第一次改正大牛错误的代码,能够找到别人的错...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:31
  • 155

悟空学Linux专栏----第28篇

由于唐僧上的课很多笑声,加上唐僧比较帅,所以“西游嵌入式培训班”一下子火了,很多人纷纷跑来报名,其中美女最多。这着实让唐僧高兴了很久,但是高兴之后唐僧也纠结,这么多的学生,需要多少老师啊?唐僧要求他的...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:04
  • 171

悟空学Linux专栏----第39篇

最近沙僧休息了好久,唐僧希望沙僧能够讲工作队列,工作队列是Linux系统中最为重要的一个中断后半部分机制,也是最为实用的一种。这让沙僧很是高兴,所以一大早沙僧就兴奋的来到了课堂。   沙僧:工作队列...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:19
  • 206

悟空学Linux专栏----第49篇

(Linux内核同步机制之自旋锁)   接着讲解自旋锁操作API!   spin_lock_init(x);   该宏用于初始化自旋锁x,自旋锁在真正使用之前必须先初始化,该宏用于动态初始化; ...
  • wukonglinux
  • wukonglinux
  • 2015年07月14日 10:36
  • 185

悟空学Linux专栏----第21篇

今天悟空得到了一个好消息,就是八戒竟然主动邀请他去上课了,这让悟空很是意外,意外之余有点小感动。所以悟空一大早就来到了课室,看到八戒正在那里睡觉。   悟空:你是猪啊,怎么还睡啊?   八戒:猴哥...
  • wukonglinux
  • wukonglinux
  • 2015年07月13日 10:09
  • 171
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:悟空学Linux专栏----第9篇
举报原因:
原因补充:

(最多只允许输入30个字)