自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(124)
  • 资源 (9)
  • 收藏
  • 关注

原创 数据结构与算法-树和森林(Tree and Forest)

本文介绍了树的三种存储结构及其实现方法。双亲表示法通过存储结点数据和双亲位置实现快速查找父节点,但查找子节点效率低。孩子链表法将子节点组织成链表,便于查找子节点,结合双亲表示法可同时高效查询父子关系。孩子兄弟法(二叉树表示法)则用二叉链表存储树结构,每个结点包含指向第一个孩子和右兄弟的指针。文中提供了C语言实现代码示例,并分析了各方法的优缺点,为树结构的存储和操作提供了多种选择方案。

2025-09-25 11:10:31 744

原创 数据结构与算法-树和二叉树-二叉树的存储结构(Binary Tree)

本文介绍了树和二叉树的基本概念及存储结构。主要内容包括:1) 树和二叉树的定义,包括基本术语和两种特殊二叉树(满二叉树和完全二叉树);2) 顺序存储结构,适用于完全二叉树,但对一般二叉树存储效率低;3) 链式存储结构,包括二叉链表和三叉链表;4) 遍历算法,重点介绍了中序遍历的递归实现。文章通过图示和代码示例详细说明了相关概念和实现方法,为后续学习二叉树操作奠定了基础。

2025-09-09 11:42:52 835

原创 数据结构与算法-字符串、数组和广义表(String Array List)

本文介绍了字符串的三种存储结构和两种模式匹配算法。在存储结构方面,包括定长顺序存储(SString)、堆式动态分配存储(HString)和链式分块存储(LString)。模式匹配算法部分重点讲解了BF算法及其时间复杂度分析(最好情况O(n+m),最坏O(n×m)),以及更高效的KMP算法。文中还介绍了数组和广义表相关的内容。

2025-08-23 11:37:32 695

原创 数据结构与算法-栈和队列-队列(Queue)

本文介绍了栈和队列中的两种重要结构——循环队列和链队的实现方法。在循环队列部分,详细讲解了如何解决"假溢出"问题,通过取模运算实现头尾指针的循环移动,并给出了判断队空和队满的条件。同时提供了完整的C语言实现代码,包括初始化、求长度、入队、出队、取队头元素和销毁队列等基本操作。在链队部分,阐述了链式存储结构的实现方式,说明如何通过头尾指针管理队列,同样给出了完整的操作实现代码。两种队列结构都配有清晰的图示和代码注释,便于理解其工作原理和实现细节。

2025-08-16 11:27:48 879

原创 数据结构与算法-栈和队列-链栈(Linked Stack)

本文介绍了链栈(Linked Stack)的基本概念和操作实现。链栈采用链式存储结构,通过单链表实现。文章详细讲解了链栈的初始化、入栈、出栈、获取栈顶元素、销毁栈、判断栈空、获取栈大小和清空栈等核心操作的算法步骤与C语言实现。其中入栈和出栈操作的时间复杂度均为O(1),而获取栈大小操作需要遍历整个链表,时间复杂度为O(n)。与顺序栈不同,链栈不需要预先分配固定存储空间,可以动态调整大小,但需要额外空间存储指针信息。每个操作都配有清晰的代码实现和必要的注释说明。

2025-08-05 11:13:49 458

原创 数据结构与算法-栈和队列-顺序栈(Sequence Stack)

摘要:本文介绍了栈和队列两种线性数据结构的基本概念,重点阐述了顺序栈的实现方法。栈是后进先出(LIFO)结构,队列是先进先出(FIFO)结构。文章详细讲解了顺序栈的8个核心操作:初始化、入栈、出栈、获取栈顶元素、销毁栈、判空、获取栈大小和清空栈,并给出了C语言实现的代码示例。栈的基本操作包括动态分配空间、指针移动和边界检查等关键步骤,为后续栈的应用奠定了基础。

2025-08-01 16:22:10 745

原创 数据结构与算法-线性表-案例分析与实现

实现了多项式和稀疏多项式的运算,图书管理的功能没有做。

2025-06-17 15:14:40 339

原创 数据结构与算法-线性表-线性表的应用

线性表合并算法分为无序表合并和有序表合并两类。无序表合并通过遍历两个表,将B表中的非重复元素插入到A表末尾,时间复杂度为O(m*n)。有序表合并有顺序表和链表两种实现方式,通过比较元素值按顺序合并,时间复杂度均为O(m+n),其中顺序表空间复杂度为O(m+n),链表为O(1)。两种合并算法均能有效处理线性表的合并需求,但有序表合并效率更高,尤其是链表实现既节省空间又保持高效。

2025-06-13 10:51:41 1114

原创 数据结构与算法-线性表-双向链表(Double Linked List)

双向链表是一种线性表结构,其结点包含两个指针域,分别指向直接前驱和直接后继,解决了前向查找的问题。

2025-05-22 14:18:30 706

原创 数据结构与算法-线性表-循环链表(Circular Linked List)

循环链表是一种特殊的链表结构,其尾结点的指针指向头结点,形成一个闭环。与单链表不同,循环链表的遍历终止条件为指针是否回到头结点。合并两个循环链表时,可以通过尾指针简化操作。

2025-05-17 10:38:49 576

原创 数据结构与算法-线性表-单链表(Linked List)

单链表是一种动态数据结构,通过节点存储数据和指向下一个节点的指针来实现。与顺序表相比,单链表在插入和删除操作上更为高效,但无法随机访问元素。单链表的基本操作包括初始化、创建(头插法和尾插法)、获取元素、插入、删除、计算长度、判断是否为空、清空和销毁链表。初始化操作的时间复杂度为O(1),而创建链表和获取元素的操作时间复杂度为O(n)。单链表的实现需要定义节点结构,并通过指针操作进行链表的构建和遍历。

2025-05-15 17:08:45 1012

原创 数据结构与算法-线性表-顺序表(Sequential List)

顺序表并不难理解,主要是知道顺序表是在内存中连续存储的一段数据,知道这个后,相应的算法也就非常简单了。

2025-05-10 10:57:32 1132

原创 哈工大操作系统课程总结和资料分享

哈工大操作系统课程的总结和资料分享。

2025-02-24 10:52:31 270 1

原创 2024:不惑之年的自我突破与成长

2024年的总结,和大家汇报一下我2024年干了啥,感谢大家一年来的支持。

2025-01-20 15:43:03 1195

原创 哈工大操作系统实验9 proc文件系统的实现

该篇文章是哈工大操作系统实验9——proc文件系统的实现完成笔记,文件系统有点难理解,一开始我一直没有搞太明白file、inode、block等之间的关系,后来结合源码、注释书籍、实验内容终于弄清晰了。

2025-01-16 11:52:37 1080

原创 哈工大操作系统实验8 终端设备的控制

该篇文章是哈工大操作系统实验8——终端设备的控制完成笔记,本次的实验比较简单,但了解到Linux系统的IO核心是文件和终端设备驱动编写的方法,收获也是很大。

2025-01-09 10:08:47 865

原创 哈工大操作系统实验7 地址映射与共享(万字详解)

该篇文章是哈工大操作系统实验7——地址映射与共享的完成笔记,其中包含了详细的步骤和相关代码,并有截图说明,实验内容都成功通过了。

2025-01-03 10:52:22 1169

原创 哈工大操作系统实验6 信号量的实现和应用(注释详细)

该篇文章是哈工大操作系统实验6——信号量的实现和应用的完成笔记,其中包含了详细的步骤和相关代码,并有截图说明。实验内容都成功通过了,但是因为内容较多,记录中难免会有疏忽,如有发现错误,欢迎大家留言和我联系。

2024-12-18 08:54:50 1261

原创 哈工大操作系统实验5 基于内核栈切换的进程切换(可运行)

该篇文章是哈工大操作系统实验5的完成笔记,主要难点在于内核栈切换的五段论,其中包含了详细的步骤和相关代码,并有截图说明。实验内容我都成功通过了,但是因为内容较多,记录中难免会有疏忽,如有发现错误,欢迎大家留言和我联系。

2024-12-06 15:47:03 991

原创 哈工大操作系统实验4 进程运行轨迹的跟踪与统计

该篇文章是哈工大操作系统实验4的完成笔记,不得不说多进程变成确实比较难,从理解实验内容到整理出这篇文章差不多用了2周时间。其中包含了详细的步骤和相关代码,并有截图说明,后面日志统计分析还做了图表。

2024-11-28 11:55:48 1868

原创 哈工大操作系统实验3 系统调用(System Call)

该篇文章是哈工大操作系统实验3的完成笔记,其中包含了详细的步骤和相关代码,并有截图说明。实验内容我都成功通过了,但是因为内容较多,记录中难免会有疏忽,如有发现错误,欢迎大家留言和我联系。

2024-11-15 10:30:55 1632

原创 哈工大操作系统实验2 操作系统的引导

第二个实验主要是操作系统系统引导相关的内容,涉及bootsect.s、setup.s的修改、其中的知识点:引导扇区、中断、读取磁盘内容、屏幕显示字符、获取硬件信息等。

2024-11-09 09:17:40 1593

原创 哈工大操作系统实验1 熟悉实验环境

实验1主要是介绍了在Ubuntu下如何编译、运行和调试linux0.11内核程序。课程中的说明非常详细了,目前照着做没有发现什么问题。

2024-10-30 08:43:02 710

原创 第3章 分段机制和逻辑地址

该章节主要介绍了寄存器的字长、如何访问内存、内存中的字节序以及8086的分段机制。

2024-10-26 08:16:07 1111

原创 第2章 计算机和汇编语言

第2章重点介绍了寄存器(Register)、内存(Memory)和指令(Instruction)、指令集(Instruction set)、字节(Byte)等基本概念,然后引出了为什么要发明汇编语言(Assembly)。

2024-10-23 14:35:15 332

原创 第1章 十六进制计数法

第一章节主要是说明了数制的知识,讲解了二进制、十进制和十六进制,以及进制之间的互相转换。

2024-10-22 11:16:55 549

原创 第20章 平坦内存模型和软件任务切换

该章节的代码功能和前面几章类似,只是本章通过平坦内存模型简化开发、通过软件进行任务切换。如果前面几章都理解了,这章就容易理解了。

2024-10-18 10:57:54 1160

原创 第19章 分页机制和动态页面分配

该章主要讲解了内存的分页机制,根据其机制对第18章的代码进行改造优化。在阅读的过程中,一开始比较懵,但后来掌握一个方法后就容易理解多了:就是多从线性地址转成物理地址的角度去思考。因为书中很多的地方要通过物理地址构造线性地址,比如页目录表的物理地址是0x21000,构造的线性地址是0xFFFFF000,反向思考有点难,但是正向从线性地址0xFFFFF000转成物理地址0x21000进行思考并尝试自己计算,就很容易理解了。

2024-10-11 10:30:46 1222

原创 第18章 中断和异常的处理与抢占式多任务

本章代码实现的功能,创建内核任务、用户任务1、用户任务2,然后通过中断的方法在几个任务之间切换,不同的任务打印不同的字符串。

2024-09-30 11:56:31 1036

原创 第17章 协同式任务切换

从任务切换的时机来讲,有两种基本的策略:协同式任务切换和抢占式任务切换,本章主要介绍协同式的任务切换。

2024-09-26 17:25:56 996 2

原创 第16章 任务和特权级保护

该章节的内容我感觉比较难,其中涉及了很多新的知识:调用门、LDT、TSS、TCB、特权级、IO特权级等,并且调用门还涉及特权级检查和变更等。我也看了很多遍,才弄清楚,建议是一个一个知识点厘清。

2024-09-24 16:42:47 996

原创 第15章 程序的动态加载和执行

该章节讲解了MBR加载内核,然后内核加载用户程序这样一套流程,模拟操作系统的工作原理。

2024-09-21 11:25:47 1208

原创 第14章 存储器的保护

该章主要介绍了GDT、代码段、数据段、栈段等的访问保护机制。存储器的保护功能可以禁止程序的非法内存访问。利用存储器的保护功能,也可以实现一些有价值的功能,比如虚拟内存管理。

2024-09-18 11:04:34 591

原创 第13章 操作数和有效地址的尺寸

16位操作尺寸的指令和32位操作尺寸的指令可能具有相同的机器码,为了区分这两种不同操作尺寸的指令,32位处理器引入了默认操作尺寸的概念。

2024-09-14 10:56:22 638

原创 第12章 进入保护模式

该章代码的功能:程序运行后从实模式进入保护模式,并在屏幕上输出字符:Protect Mode OK.

2024-09-12 11:48:23 558

原创 第11章 32位x86处理器编程架构

IA-32(INTEL Architecture, 32-bit):INTEL 32位处理器架构简称IA-3,以8086处理器为基础发展起来的。该章重点介绍了IA-32处理器的工作方式和相关技术。

2024-09-10 15:28:37 1410

原创 第10章 中断和动态时钟显示

书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。

2024-09-09 11:23:54 1687

原创 第9章 硬盘和显卡的访问与控制

该章节模拟操作系统加载应用程序,其中涉及的知识点:段的重定位方法、读取硬盘、控制屏幕光标等。

2024-09-06 14:17:22 1359

原创 第8章 比高斯更快的计算

该章通过从1加到100的功能,介绍了数据结构——栈、处理器的寻址方式。

2024-09-02 15:15:17 1233

原创 第7章 相同的功能,不同的代码

该章节和上章实现的功能是一样。也在屏幕上输出:Label offset: number标号的十进制格式,不过用了更优雅的实现方式。

2024-08-30 11:51:49 879

Red Hat Enterprise Linux 5 图文安装手册

Red Hat Enterprise Linux 5 图文安装手册,详细的步骤说明,图文并茂。

2010-12-02

惠新宸关于php7的说明文档

惠新宸关于php7的说明文档,里面着重介绍了性能问题,诸如phpng、jit、ast,也有很多关于性能方面的测试,还有一些新的语法说明。

2015-07-18

php实现文章中关键词加链接的功能

一般在文章展示的时候,都会将其中的关键词加上链接,增加网站的粘合性。咋一想挺简单的,直接替换字符串不就行了。可细细想来,还是有不少问题。具体思路参考这篇文章:http://www.01happy.com/content-keyword-and-php-practice/

2012-12-02

Atheros Communications Inc. AR8151 v2.0 Gigabit Ethernet (rev c0)网卡驱动

Atheros Communications Inc. AR8151 v2.0 Gigabit Ethernet (rev c0) 网linux卡驱动 1、解压:tar zxvf ** 2、进入src目录: cd src 3、编译: make 4、安装: make install

2012-02-26

wordpress-5.6.2-zh_CN.zip

wordpress安装包,因为官网下载特别慢,放上来共享一下,赚点积分。

2021-02-23

ubuntu12.04苹果mac主题

在ubuntu12.04下可以通过这个主题包快速的安装苹果mac主题,我自己也正在用这个主题,分享给大家。

2012-08-28

php5.3.6英文手册

php英文手册,包含如何安装php,php基础教程,php函数参考。

2011-11-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除