自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zy010101博客

目前在做Python开发,网络安全。

  • 博客(10)
  • 资源 (9)
  • 收藏
  • 关注

原创 线程

现代的操作系统都提供了单个进程包括多个控制线程的特性。线程,有时候称为轻量级进程(lightweight process,LWP),是CPU使用的基本单元;它包含了线程ID,程序计数器,寄存器集合以及堆栈。它与属于同一进程的其他线程共享代码段,数据段和其他的操作系统资源。现代的应用程序通常都是一个具有多线程的独立进程。例如,Chrome浏览器。当我们用它打开一个网页的时候,它是这样工作的,...

2018-10-31 20:57:29 568

原创 优先队列(堆)

优先队列:顾名思义,这个队列中的元素是有优先级的,它和普通的先进先出(FIFO)不一样。我们在很多场合可能都需要用到这种特殊的队列(例如,操作系统的进程调度)。可以看出来,优先队列(priority queue)的核心操作有两个,分别是插入和删除。插入是显而易见的,删除就是找出这个队列中优先级最高的那个元素(可以是最大的,也可是最小的)。一些简单的想法:我们可以采用一个简单的链表来实现,表...

2018-10-29 10:13:27 1233 1

原创 从CPU管理到进程的引入

为什么要管理CPU,这是因为在“上古时代”,CPU是计算机硬件之中最昂贵的资源。因此提高CPU利用率是很有必要的。我们知道只要给CPU的PC一个地址,CPU就能运行起来了,假设在运行一段时间后,需要一些I/O操作,而I/O操作(当年主要是连接打印机等)是很费时间的。这个时候的CPU是闲置的。而实际等着CPU去处理的程序有一大堆,这时候CPU资源是被浪费掉的。因此必须想办法提高CPU利用率。现...

2018-10-27 23:09:11 247

原创 操作系统的系统调用

首先,有一个概念叫做接口。抽象而言的接口是连接两个东西的中间物。接口的好处是屏蔽了连接起来的实际细节。我们只关心接口如何使用。系统调用:操作系统的接口是连接应用软件与操作系统的中间桥梁。接口在程序设计中表现的形式就是:函数。操作系统提供的函数就被称为系统调用(system call)。这里有个标准POSIX(Portable Operating System Interface of UNIX...

2018-10-26 21:21:12 3829

原创 从图灵机到操作系统的启动

1936年,阿兰图灵提出了一种可计算模型——图灵机。图灵机是从模拟人用纸笔计算的过程得到的灵感。图灵设想只存在于想象中的机器由一个控制器、一个读写头和一根无限长的工作带组成的。纸带起着存储的作用;读写头能够读取纸带上的信息,以及将运算结果写进纸带;控制器则负责对搜集到的信息进行处理。图灵机原理图如下:根据这个原理,人类设计了第一台电子计算机——ABC计算机。但是ABC计算机实现的是图灵机,...

2018-10-25 12:45:19 1162 2

原创 伸展树(splay tree)

对于二叉查找树而言,每次操作的最坏时间复杂度是O(N)。(当树退化为链表的时候)。为了解决这个问题,我们给树附加了一个平衡条件。平衡条件限制了任何节点的深度都不能过深。其中一种限制条件是:一颗二叉查找树的左子树和右子树的高度差不能超过1,这个条件限制产生了AVL树。二叉查找树的最坏操作是O(N)。但是这样的操作并不常见。所以累加起来的时间就变得比单次操作时间的最坏情形要重要的多。但是二叉查找树...

2018-10-16 17:02:03 2789 1

原创 AVL树(平衡二叉树)

AVL树这样一棵搜索二叉树,它的左右子树的深度之差不超过1。因此,他是带有条件的搜索二叉树。这个条件保证了AVL树的深度是O(log n).最简单的想法是左右两棵子树保持相同的高度。但是这种条件过于苛刻,难以使用。AVL只要求深度之差不超过1。AVL解决了二叉搜索树带来的不平衡问题。但是要求变成了我们必须在每次操作后进行调整,以使得AVL树保持平衡。另一种较新的方法是放弃平衡条件,允许树有任意的深...

2018-10-15 22:33:18 1523 1

原创 二叉搜索树

二叉搜索树(Binary Search Tree)也叫做二叉排序树或者二叉查找树。顾名思义,它是一种对排序和查找都很有用的特殊二叉树。二叉查找树满足以下性质:(假设二叉查找树中每个节点元素都是不同的,它也可以为空)非空左子树的所有键值小于其根节点的键值; 非空右子树的所有键值大于其根节点的键值; 左,右两棵子树都是二叉搜索树二叉搜索树本质上还是一棵二叉树,只不过对它做了限定,就行队列...

2018-10-14 11:45:59 291

原创 二叉表达式树

表达式树:表达式树的叶节点是操作数,其他节点是操作符。假设所有的运算符都是双目运算符,那么刚好形成一颗二叉树。我们可以通过递归计算左子树和右子树的值,从而得到整个表达式树的值。这就是一颗表达式树,在这棵树中,只有叶节点是操作数,其他节点都是操作符。 我们先来遍历一下这棵树。前序遍历这棵树将会得到这样一个表达式:++a*bc*de;(这样的表达式,我们称之为前缀表达式,操作符位于操作数之前。...

2018-10-13 14:16:44 14151 7

原创

树的一些定义和基本性质:一棵树只有唯一的根节点。 子树的个数没有限制,但是它们一定是互不相交的。(一对多的关系,不能是多对多的关系) 1个N节点的树有N-1个边。 节点的度:节点的子树个数(度为0的节点称为叶子节点)。 树的度:树中节点度最大的值。 m棵树(一个森林)一共有k条边,那么该森林一共有m+k个节点。(假设每棵树有Ki条边,那么k1+k2+...+km = k。并且每棵树有...

2018-10-12 12:02:48 314

20211001红色底左右两侧的登录注册页.zip

登录注册页面

2021-10-02

bookmanager.zip

bookmanager.zip

2021-01-25

基于51单片机的电子琴设计.zip

本资源对应于博客“基于51单片机设计的简易电子琴”

2020-07-02

二叉树的操作集合(C++语言)

二叉树的层序建立,先序建立。二叉树的前序遍历,中序遍历,后序遍历,层序遍历,求二叉树的高度,输出二叉树的叶节点。递归版本和非递归版本的实现都有。

2018-10-12

1602使用手册和字符手册

1602的使用手册,包括1602的指令,时序图,以及1602的字符手册。

2018-05-23

单片机开发USB转串口CH340驱动

在win8(win10)上安装该驱动后,可能在设备管理器内找不到端口这个选项,这时候需要手动添加过时硬件。不懂如何操作的可以去看我的博客,有介绍。

2018-05-20

51单片机特殊功能寄存器说明表

51单片机特殊功能寄存器的详细的说明表,列举了常用的所有特殊功能寄存器。

2018-04-25

8051(51)单片机指令表

51单片机指令表,并附上详细的指令解释。这个文档是51微控制器的附录

2018-04-25

C++知识图谱(不包含C++11之后的内容)

这是用XMind写成的C++知识图谱,有C++的详细知识点

2017-07-02

空空如也

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

TA关注的人

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