• 好好学习,天天向上~
  • 欢迎欢迎~

 分类:linux笔记

linux学习第20节,二叉树的特性和插入、查询、删除等基本操作

前面几节较为详细的讨论了 linux 内核常用的链表、队列、映射等几种数据结构,本节将介绍C语言中另一种重要的数据结构——二叉搜索树(通常简称为BST),并且将一行一行写出相关的C语言代码。 二叉树的概念 树结构是一个多层的特定数据结构,每个节点之间通过指针连接(这点有些像链表)...

lcc 4个月前 (01-24) 147℃ 0评论 0

linux学习19,内核中的“队列”数据类型

前面两节较为详细的讨论了 linux 内核中链表的设计,以及相关的C语言代码实现。本节再来看看 linux 内核中另外一种常用的数据类型:队列。 “队列”数据结构适合处理“生产者”和“消费者”编程模型 事实上,不仅仅是 linux 内核,基本上稍微有些规模的编程项目都会用到“队列...

lcc 4个月前 (01-22) 181℃ 0评论 0

linux学习18,内核是如何操作链表的

上一节较为详细的介绍了 linux 内核中链表的设计与实现,能够看出,内核实际上是将链表“塞入”数据结构的。事实上,为了方便的操作这些链表,linux内核实现了一系列方法,本节将了解此。 链表的初始化 正如上一节介绍的,list_head 本身没有记录额外的信息,它仅仅起到连接...

lcc 4个月前 (01-21) 114℃ 0评论 0

linux学习17,内核中链表的设计与实现

上一节较为详细的讨论了 linux 中的系统调用,接下来几节将学习 linux 内核中的基本数据结构的设计和实现。本节先来看看 linux 内核中的链表。 链表和数组有些相似 链表是基于 C语言指针的,看了我《C语言入门》系列文章的朋友应该记得这张图: 指针 p2 指向一块内存...

lcc 4个月前 (01-19) 108℃ 0评论 0

linux学习16,系统调用

包括 linux,大多现代操作系统都提供了用户进程和内核交互的接口。通过这些接口,用户进程能够在内核的监督下访问硬件设备,创建新进程或者与其他进程通信。可以说,这些接口充当了用户进程和内核的中转站。 在内核的监督下,可以避免用户进程的肆意妄为,做出一些损害系统的事情。 在...

lcc 4个月前 (01-16) 180℃ 0评论 2