自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (6)
  • 收藏
  • 关注

原创 【数据结构】二叉树遍历图解

二叉树遍历简介:本文主要涉及二叉树的先中后序列遍历文章并未涉及代码,仅仅提供思路reference:学堂在线-数据结构引言:在学习链表和数组这两种线性的数据结构的时候,元素之间的次序是十分容易看出的,毕竟元素的位置就是排着队的,自带次序关系,如果想要遍历整个数据结构,无非就是选择倒着遍历还是正着遍历。 但是在学习二叉树这种半线性结构的时候,也想要遍历整棵树,可是树没有数组、链表这么天然的次序关系,所以需要人为的定义次序关系,即先中后序(VLR,LVR,LRV),这一个过程本质上就是

2021-10-02 00:49:39 2266 1

原创 【数据结构】双向链表

双链表文章简介本文主要涉及双向链表的设计以及一些常用接口的代码设计编程语言:C++reference:学堂在线-数据结构链表是一类在逻辑上有顺序,但是在物理结构上没有顺序的数据结构,结点之间通过指针相互索引和访问,所需时间为O(n)链表的优点:动态操作耗时低,只需要修改指针的指向就可以实现数据的增加删除,并且只需要常数的时间就能够实现链表的缺点:静态操作耗时高,因为在物理结构属于无序的状态,所以不能使用寻秩访问这种时间复杂度为O(1)的方式进行数据的访问文章目录双链表文章简介1. 双链

2021-09-29 20:47:32 554

原创 【MySql】用户安全管理

文章目录1. 用户账号存储2. 创建用户账号2.1 新增用户2.2 修改用户名2.3 修改用户密码3. 删除用户账号4. 用户权限控制4.1 查看用户权限4.2 授权4.3 撤销授权为了保证MySql服务器的安全,每个MySql的用户应该对他们需要的数据具有适当的访问权。例如:多数用户只能够用到读写权限,只有少数用户能够创建表格和删除表格。一些用户只能访问某个数据库而不能访问其他的数据库。一些用户可以管理其他用户的账号,但大多数人不需要管理别人的账号每个用户需要用到什么权限,就只给他们什么权

2021-08-12 21:17:25 559

原创 【汇编语言】栈区与SS:SP寄存器

汇编语言 - 栈栈是一块特殊的内存空间,本文涉及的CPU为8086CPU,所有与内存地址有关的数字皆为16进制前言栈的运行规律 - 先进后出,后进先出以下为入栈的过程:以下是出栈的过程:以上就是栈的运行机制,栈的入栈叫做push,出栈叫做pop在8086CPU中,栈是一块特殊的内存空间,栈的出栈和入栈都是以字为单位的1. 8086栈机制8086使用一段内存对栈进行模拟,最基本的操作是pop(出栈)和push(入栈)pop 寄存器 : 表示将栈顶元素出栈并且将数据送入寄存器

2021-08-08 22:28:09 11664 1

原创 【汇编语言】寄存器与内存

汇编语言 - 内存访问本篇主要为寄存器和内存中相互传送数据,文章涉及的CPU为8086,文章中涉及到的内存地址皆为16进制前言在CPU中,用16位的寄存器来存储字型数据,用8位的寄存器来存储字节型数据在内存中,用两个连续的内存单元存储字型数据,用一个内存单元存储字节型数据如图:字节型因为就存在一个单元中,所以概念十分简单;例:0号单元存放的字节型数据是什么?答案:20H3号单元存放的字节型数据是什么?答案:00H字型因为存在两个单元中,所以规定了字单元的概念。即第N个单

2021-08-08 10:24:52 1088

原创 【汇编语言 】物理地址与段寄存器

前言当CPU在访问内存单元的时候,需要给出内存单元的地址。所有内存单元构成了一个一维的线性地址空间,每个内存单元在整个空间都有一个唯一的地址,这个唯一的地址被称之为物理地址。CPU通过地址总线送入存储器中的地址,必须是一个物理地址,存储器才能读写该内存单元。不同的CPU形成物理地址的方法不同,本篇讨论的是8086形成物理的过程,并且涉及到内存地址的数字皆为16进制。1. 16位结构的CPU16位的CPU拥有下面几种特性运算器一次最多可以处理16位的数据寄存器的最大宽度为16位寄存器和运

2021-08-07 17:16:34 2542

原创 【汇编语言】通用寄存器和基础汇编指令

文章目录前言1. 通用寄存器2. 字在寄存器中的存储2.1 两个单位2.2 基础的汇编指令2.2.1 MOV指令2.2.2 ADD指令2.2.3 传送运算规范3. 相关练习题前言本篇文章所涉及的CPU为8086CPU在CPU内部有许多的器件,这些器件相互配合,共同实现CPU的功能CPU中主要的器件分别为:运算器(信息处理计算)寄存器(信息存储)控制器(控制各种器件进行工作)CPU与内存之间通过总线进行交互,称之为外部总线CPU内部的器件之间也通过总线进行连接,称为内部总线而C

2021-08-06 13:02:10 1499

原创 汇编语言 - CPU与存储器

汇编语言 - CPU与存储器文章目录汇编语言 - CPU与存储器1. 冯诺依曼体系结构2. 存储设备3. CPU 与内存的交互4. 总线4.1 地址总线4.2 数据总线4.3 控制总线5. 相关练习题CPU,也就是中央处理器(Central Processing Unit),是计算机的核心部件,计算机需要向CPU提供指令和数据才能够让CPU运行,指令和数据存放在内存中,而CPU运算后的结果也需要进行保存才有意义,通常保存在内存中。现在的计算机大部分都是基于冯诺依曼体系结构,而冯诺依曼体系的核心是存储

2021-08-05 22:21:01 849

原创 【汇编语言】debug常用命令使用

Dosbox - debug常用指令1. r指令【r指令】用于查看和修改寄存器中的值。1.1 查看寄存器1.2 修改寄存器中的内容2. d指令d 指令用于查看内存中的内容,有三种使用方式2.1 直接查看连续输入d,查看的内存范围会逐步递增2.2 查看具体的地址d + 段地址 + : + 偏移地址,查看给出的具体的物理地址2.3 查看范围内的地址d + 段地址 + : + 起始偏移地址 + 终止偏移地址,查看指定的一块内存的数据3. a命令将汇编指令写入内存中3.1

2021-07-15 23:13:00 1713

原创 【二分查找】详细图解

二分查找文章目录二分查找1. 简介2. 例子3. 第一种写法(左闭右闭)3.1 正向写法(正确演示)3.2 反向写法(错误演示)4. 第二种写法(左闭右开)4.1 正向写法(正确演示)4.2 反向写法(错误演示)5. 总结写在前面:(一)二分法的思想十分容易理解,但是二分法边界处理问题大多数人都是记忆模板,忘记模板后处理边界就一团乱(????:“我懂了”, ✋ :"你懂个????"​)因为我此前也是记忆模板,所以现在想通过一边学习,一边将所学记录成博客教出去(费曼学习法),希望以后能自己推导出边界如

2021-04-24 16:45:18 219874 141

原创 【Astar寻路算法图解】Java实现

Astar 寻路算法1. 什么是Astar寻路算法拥有一个地图,地图上面有起点和终点一个机器人在起点,希望用最短的距离到达终点Astar算法可以用来解决这个问题2. 算法引入的三个工具2.1 两个数据结构Open表,用来存储当前能够到达的格子,Open表使用优先队列构建,这样的话Open表就会自动把F值最小的结点放在队首了,poll()方法会自动取队首并且将队首删除Close表,用来存储已经到达过的格子使用一个普通的数组存放即可2.2 一个公式公式:F = G + H

2021-04-17 21:45:53 2829 16

原创 【Linux虚拟机】Ubuntu安装

Linux虚拟机安装教程文章目录Linux虚拟机安装教程1. Vmware WorkStation Pro 下载2. Vmware WorkStation Pro 安装3. Ubuntu 18.04系统镜像搭载4. Ubuntu18.04系统配置5. Vmware Tools安装安装虚拟机我们需要软件vmware workstaion pro虚拟机软件ubuntu18.4 系统镜像这篇博客编写于2021/4/6, 当下的最新版本的vmware workstation pro 和 ubu

2021-04-06 16:01:54 589 3

原创 【Python】装饰器图解

Python装饰器1. 什么是装饰器在学习怎么使用装饰器之前,需要对装饰器有一个大概的印象,所谓装饰器,就是对已经存在的函数进行功能的扩充,下图是装饰器出现和实现的概括2. 制作装饰器的函数基础2.1 Python中万物皆对象在python中,函数也是一种对象,对于一个对象,我们可以进行很多的操作,例如:进行赋值运算当作参数使用当作返回值使用进行嵌套(比如列表,字典)这些操作在函数的上都可以使用,同时也是我们制作装饰器的基础2.1.1 函数的赋值运算???? 一个函数创建后,可

2021-03-28 16:14:28 699 13

原创 【python】lambda表达式与排序

lambda表达式简单易用的匿名函数文章目录lambda表达式1. 什么是lambda表达式2. lambda表达式语法3. lambda表达式的主要用途3.1 list.sort()函数3.2 自定义属性排序3.3 常见的小问题3.4 二维列表的排序1. 什么是lambda表达式在学习lambda表达式之前,我们先写一个求圆的面积的函数def get_area(radius): return 3.14 * radius ** 2radius = float(input())pri

2021-03-22 00:30:18 11557 14

原创 【操作系统】操作系统的基本特性

操作系统的基本特性1. 并发性1.1 并发和并行​ 【小故事】小红是一个海王,同时和多个男生谈恋爱,为了确保不翻船⛵️,小红有自己的独门绝技,和一号男友打着电话,然后对一号说,我要吃饭了,然后挂掉电话之后就打给二号,和二号聊着聊着,就对二号说,我要洗澡了,说完就挂了电话,继而打给三号,和三号聊着聊着,就对三号说,我要睡觉了,接着又打给了四号……从微观上来说,在每个时间段里面,小红都只是和一个男的谈恋爱,但是从宏观上来说,比如她一天内同时和多个人谈着恋爱。小玲是个老实人,她没有小红那么聪明,她建了个

2021-03-18 22:38:43 528 2

原创 【操作系统】操作系统基础概念

操作系统当我们在学习操作系统的时候,我们需要知道,操作系统的基本特征是什么?操作系统是人造的计算机以前是不存在的,是我们人类造出了计算机,所以计算机学科也可以叫做“人造学科”,而人造学科拥有以下四个特点不精确,具有相对性从对人类的活动的观察中推导出依赖于人的主观判断符合我们人类的直觉比如我们常见的数据结构,栈和队列,就是通过观察我们身边的事物,比如排队,以及最简单的栈模型,餐桌上盘子的堆叠等……并且在人造学科中,很多的原理和我们的直觉相符,所以学习操作系统的时候,我们需要用自己生活

2021-03-15 21:50:59 199

原创 【python】python语法糖

python 语法糖1. 什么是语法糖????语法糖是由编程语言提供的一种可以让我们写出来的代码在不影响语句执行的功能的条件下,能够让我们的代码看起来更简洁和美观的一种语法。很多人刚开始接触语法糖的时候,总会说这样一句:“最讨厌语法糖,不好好说话”,当学会使用了语法糖之后:要说语法糖这东西,其实可以联想到C语言大神,能把宏定义玩出花来,被玩出花来的宏我愿称之为自创语法糖。2. 经典的 a 和 b当我们需要交换两个数字的值的时候,相信很多人都写过这句代码a, b = 10, 20t =

2021-03-12 21:05:03 3928

原创 【python】模块和包

python模块和包​ 在python中,一个程序由简单的程序可以由变量,函数,类组成,也可以说函数也是一个变量(对象), 类也是一个变量(对象),其次有了模块的概念,以.py结束的一个文本文件就可以称为一个模块,模块是我们保存代码的最小的一个单位,​ 一个模块可以称之为一个细胞,而由很多细胞组成的器官,可以称之为包。一个包包含了很多的模块。​ python之所以强大,就是因为第三方别人编写好的包我们可以直接导入使用,life is short, we need python,那么怎么导入别人编

2021-03-09 23:12:08 505 4

原创 【数据库】SQL语句基础

数据库SQL语句(基础用法)文章目录数据库SQL语句(基础用法)1. SQL数据类型(常用的几个)1.1 varchar(n)1.2 smallint1.3 float1.4 date2. 创建一个数据库2.1 用到的表格2.1.1 英雄表2.1.2 武器表2.1.3 英雄武器契合表2.2 创建一张表格2.2.1 创建英雄表格2.2.2 创建武器表格2.2.3 创建英雄武器契合表格2.3 往表格中插入数据2.3.1 英雄表格添加数据2.3.2 武器表格添加数据2.3.3 英雄武器契合表添加数据3. 数

2021-02-28 20:04:41 1129 7

原创 【手写】数据库关系代数练习题

数据库关系代数练习题因为数据库关系代数的特殊符号在电脑上很难输入……所以采用了手写,字不太好看????第一部分第二部分数据库如下:题目如下:第三部分

2021-02-27 16:25:57 26575 53

原创 数据库关系代数详解

数据库关系代数1. 关系代数的运算1.1 传统的关系运算传统的关系运算起源于数学的集合论,有下面几种:笛卡尔积运算差运算交运算并运算1.2 专门的关系运算选择投影连接除运算1.2.1 关系运算中的基础概念在学习关系代数的时候,我们脑海中要时刻拥有一张表格,还有一些表格的参数,这张表格如下:比如说我们每个人都见过成绩单,牢记以下的比喻R就为整张成绩单R[A1, A2, A3,…Ai] = R[语文,英语,数学……学科]t为某个同学t [Ai] 就

2021-02-26 17:04:42 90149 116

原创 【Python】标准数据类型

Python标准数据类型在Python中变量不需要赋值,每个变量在使用的时候必须进行赋值,赋值之后该变量会自动被创建,并且在Python中,所有的变量都没有类型,变量单纯只是变量而已,我们所说的类型只是这个变量在内存中指向的对象的类型,在Python中,所有的数据类型都是对象文章目录Python标准数据类型1. 六种数据类型2. 数字2.1 整型数字2.2 浮点型数字2.3 复数2.4 数字运算2.5 常用的数学函数2.5.1 abs()与fabs()2.5.2 ceil() 和 floor()2.5.

2021-02-23 20:03:32 704 6

原创 【C语言】内存管理

C语言内存管理1. 内存分区程序运行后,所有的数据加载到了内存上面,内存会进行分区操作,会划分为四个区域,1.1 代码区代码区:存放所写的代码在经过处理后生成的二进制文件,这些二进制文件可以被CPU执行,也就是指令,为了防止指令被其他程序修改,代码区通常来说是只读的。代码区中还会规划局部变量的相关信息。1.2 全局区/静态区1.2.1 data段已经初始化的全局变量,已经初始化的静态变量(包含全局静态变量和局部静态变量),常量还会在.data段划分出一个常量区,比如字符串常量1.

2021-02-05 22:01:44 467

原创 一行代码解决vs中scanf()、strcpy(),4996警告问题

一行代码解决vs中scanf()、strcpy(),4996警告问题scanf() 和 strcpy属于过时函数,不安全,vs中编译器默认不允许使用这些过时的函数所以需要告诉编译器这些函数我要使用,你不要报错以下两句代码任意复制粘贴一句在整个代码的第一行!!!,第一行!!!,**第一行!!!**加上就可以解决报错的问题 !#pragma warning(disable : 4996)#define _CRT_SECURE_NO_WARNINGS...

2021-02-03 16:02:58 306

原创 static && extern-静态变量解析

C语言静态变量和普通变量1. 思维导图静态变量和普通变量又可以分为全局的和局部的,所以在了解静态变量和普通变量的时候,我们需要简单了解一下C语言作用域2. C语言作用域2.1 代码块作用域代码块作用域就是大括号"{ }"之间的一段代码#include<stdio.h>int main(){ { int a = 10;//在一个大括号里面定义了变量a, //变量的生命周期就在定义的" { " 到 " } " 内 print

2021-02-02 21:35:53 751

原创 指针-从入门到放弃系列(数组篇)

C指针核心1. 指针和数组1.1 数组名的使用#include<stdio.h>int main(){ int array[5] = { 10, 20, 30, 40, 50 }; printf("数组的大小为:%d",sizeof(array));//array占有20字节 return 0;}以上程序输出结果为:20,可以我们知道,数组名我们可以当作指向数组的首元素的指针,但是数组名和指针还是有区别的,因为一个指针的大小为四个字节(32位操作系统)。

2021-01-30 22:26:13 382

原创 【python】函数基础

python函数函数是组织好的,用来实现单一功能的代码段,可以重复利用1. 函数的定义函数的使用def关键字定义,后面跟着函数名和参数列表return关键字用于返回一个值给调用者,不带return默认返回None一个函数可以return不同类型的数据类型2.函数的参数2.1 python不支持重载函数是大多数语言都支持的一个代码构建块,在python中,函数的参数可以有默认值,也支持可以变的参数列表,在C,C++,Java中有函数的重载,但是python不支持函数的重载。de

2021-01-28 20:19:37 226

原创 指针-从入门到放弃系列(基础篇)

C语言指针1. 基础概念1.1 指针的意义通过指针可以间接的访问内存,假设你在一个大型的程序中,编写了很多函数,这些函数都需要同时访问,修改一块内存空间上的数据,而指针可以让这些函数共享同一块内存地址,从而指针像一个真正意义上的 “针” 一样,将我们的程序连接起来,实现对数据高效的共享。题外话:比如有玩英雄联盟/王者荣耀的,你可以把整个峡谷当作一个内存空间,而你的屏幕就可以当作一个指针,这个指针指向内存空间的一小块,就是你的视角对应整个峡谷的视角,你在拉视野就等于你在修改指针的指向。打游戏要多看

2021-01-27 23:23:40 574

原创 【C语言】内存,数组与结构体

C语言内存管理1. 程序运行为什么需要内存程序在运行的过程中,会产生很多的数据,内存就是用来存放这些产生的数据2. 内存的简单模型(逻辑)内存在逻辑上可以类比为一栋大楼整栋大楼的每一层都一模一样每一层之间有许多房间,房间之间也都一模一样3. 内存自身拥有的两种属性3.1 内存空间内存上面存在很多小的格子,每个小格子类似一个房间每个小格子大小为一个字节,通过字节进行编码。3.2 内存的地址内存上面的每一个小格子,都有一个对应的地址编号,类似于房间的门牌号,每个地址空间都与

2021-01-25 23:27:20 550

原创 【python】格式化输入输出

Python print() ,input()函数的使用1. 格式化输出print函数的原型print(*objects, sep = '', end = '\n',file = sys.stdout, flush = False)参数解析:objiects为我们需要输出的对象,也就是需要输出的内容sep为分隔符,默认情况下为空字符串end为结束符,默认情况下为\n,所以用print()函数输出内容时会自动换行file为输出流,默认输出为sys.stdout,输出到控制台flush表示

2021-01-23 21:49:35 7114 2

原创 GCC环境配置

C程序编写运行1.C语言概述1.1 C从何而来C语言是一种通用的、面向过程式计算机程序设计语言。1972年于UNIX系统移植与开发时,丹尼斯 里奇在贝尔电话实验室开发了C语言。1.2 C语言环境配置下载用来编译C语言代码的程序:链接提取码 1003下载完成之后,解压到资源管理器中,找到解压的文件路径,复制粘贴路径[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lZz3Hmxk-1611228851217)(res/环境变量路径.png)]

2021-01-21 21:00:08 6208 1

数据库关系代数题目【手写】

这是我一篇数据库关系代数博客中的内容,整理了一下做成了pdf

2022-01-20

【数据结构】二叉树遍历-整体思维版本 .zip

文章的所有图片

2021-10-01

List_Code.zip

本源代码为自己写博客时分享的所有源代码。免费下载

2021-09-29

博客中涉及的双链表的C++源代码

双链表源代码

2021-09-27

pandoc.exe_typora文件转word文件

用于typora中将markdown文件的格式转换成markdown的格式,需要将pandoc的文件路径加入到环境变量中。

2021-06-07

mingw64.zip

C/C++编译器

2021-03-17

空空如也

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

TA关注的人

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