- 博客(54)
- 资源 (2)
- 收藏
- 关注
原创 3.5 const限定修饰符
魔法数字(Magic Number) 是指在代码中直接使用的没有明确含义的常量数字,它们通常没有解释或说明,因此对代码的可读性、可维护性和可扩展性造成负面影响。例如,下列代码中的“3.14159”即为魔法数字。此外代码中需要使用到的一些人为设置的阈值,也属于魔法数字。例如,代码中“512”意为当前设置的缓存区大小。直接使用魔法数字降低了代码的可读性,也加大了代码的维护难度(比如阈值发生变动时,需要对多处进行手动修改)。令魔法数字等于某个变量可以提高代码的可读性、降低代码的维护难度。但是存在变量可能被无
2024-12-03 11:30:14
317
原创 3.4字符串类型
使用char时,要注意存储单个字符和存储字符串时不同的写法// 使用char存储单个字符// 使用char存储字符串时,需要使用const进行修饰。
2024-12-01 15:10:52
390
原创 3.3 指针类型
指针是一种存储相关类型变量地址的变量,通常由“*”和相关类型组成,比如 * int、* string等。指针主要用来建立特定结构(如:链表、树)、管理在程序的执行过程中动态分配的对象、传递数组或大型的类对象等。
2024-11-29 18:12:34
325
1
原创 LPNet for Image Derain
图像去雨论文Lightweight Pyramid Networks for Image Deraining阅读
2023-03-04 20:29:43
1000
原创 C++指针
什么是指针变量一个变量的地址称为该变量的指针。指针变量是一种存储被指向变量地址的特殊变量。指针变量的声明方式:基类型 * 变量名;指针工作方式:指针只存储一个地址,指针的基类型决定了取多少字节的数值,比如int * pint;pint中存储的为内存地址,而int类型决定了取四个字节。指针的赋值:定义时赋值:存储类型(默认auto) 基类型 * 变量名 = 初始地址; 指针变量赋值:指针变量名 = &变量名;指针基础应用指针的声明、赋值与使用#include <iost
2022-04-09 15:11:57
1289
2
原创 数据库组成
层次模型定义:有且只有一个节点没有双亲结点;除根节点以外的其他节点有且只有一个双亲结点。特点:任何一个给定的记录值只能按其层次路径查看,没有任何子女节点可以脱离双亲结点单独存在。数据操纵:插入、查询、更新和删除。完整性约束:当没有相应的双亲结点值时无法插入;删除双亲结点时,相应的子女结点一并被删除。优点:数据结构比较清晰。查询效率高。提供了两道的完整性支持缺点:现实中有很多联系无法使用层次模型进行描述(如多对多联系)。由于一个结点只能有一个双亲结点,用来描述有多个双亲
2022-04-03 12:07:42
1081
原创 数据结构_35
一、线性表 排序:冒泡排序、选择排序、快速排序、归并排序 查找:二分查找二、树 遍历:递归(前中后序、层次) 排序:大根堆、小根堆 哈夫曼树三、图 广度优先遍历 深度优先遍历 最小生成树:Prim算法、Kus算法 最短路径:Dij算法一、线性表排序算法 .
2021-11-19 21:44:40
369
原创 数据结构_38
LazyPrim算法思路LazyPrim算法思路:1、选择一个顶点,2、将其所有临边加入3、判断联通分量是否为1联通分量为1—>退出联通分量不为1—>从所有临边中选择一条最小,且能使联通分量减少的边加入。重复2、3。LazyPrim算法伪码:LazyPrimMst(graph *Graph){ marked = new bool[Graph.dot()];//定义顶点访问标记数组 marked = false;//默认顶点均未被访问 Unicoms = Graph.d.
2021-11-17 00:48:14
393
原创 数据结构_43
主要内容: 背包问题 关键路径一、背包问题: 给定空间,给定物品,选取最符合条件的物品。0/1背包完全背包多重背包*二、关键路径 AOV网中完成所有事件需要的最短时间(最长路径) 关键活动所在的路径AOV网:有向带权图;起点:入度为零;终点:出度为零;关键活动:最早开始时间和最晚开始时间一致。...
2021-11-13 01:13:41
268
原创 数据结构学习_44
主要内容: 1. 逆波兰表达式 2. 稀疏矩阵存储方式 3. 平衡二叉树 4. 大根堆/小根堆 构建方式 5. 完全二叉树/满二叉树一、逆波兰表达式 先把一般表达式按中序存储,再按后续遍历输出。 优点在于,后序遍历时方便计算运算。运算时可以对一般表达式进行遍历;遇到数字时,存入栈;遇到操作数时先后从栈顶取出op1和op2,然后执行 “op2操作符op1” 然后讲运算结果存回栈中即可.
2021-11-12 01:41:59
418
原创 二叉树中序非递归遍历Back_Rhythm
1、二叉树中序遍历规则:左子结点,根结点,右子结点2、非递归思路:二叉树中序遍历时会出现父结点的打印顺序在子结点之后的情况。因此,当二叉树使用链表存储时,实现非递归遍历需要用到栈。由于中序遍历的关键点在第一次输出,即树的最左结点。而树的最左结点分两种情况:左根、左叶如果是左根,在输出自己后需要输出右子结点;如果是左叶结点,则需要输出根结点后再遍历右兄弟。/*代码思路:第一步:结点入栈至最左结点;第二步:取出栈顶元素 输出值,将其右子树加入栈顶 此时有两种情况: 1、左叶,此时右子结点为
2021-07-29 16:22:05
248
原创 LC编程积累001
题目描述输入一个数组和一个数字,输出数组中相加等于数字的元素下标。数组要求:不能有重复数字,且数组中符合要求的数字最多只有一对,当没有符合要求的输出时,返回数组长度。|示例输入: 1 2 3 5 7输出: 1,3-----------------输入: 1 4 3 5 2输出:4思路0、两遍for循环破解,时间复杂度为O(n),空间复杂度为O(1)。1、使用哈希表(HashMap,eg:unorder_map),利用哈希表的查找特性可以一遍for循环求解
2020-07-27 23:52:29
631
原创 UEFI原理与编程第二章学习- .dsc .dec .fdf文件与包
.dsc .dec .fdf文件及包 上一篇介绍了 .inf文件, .inf文件相当于Visual Studio中的工程文件。而 .dsc(Platform Description File)则相当于Visual Studio中的 solution 文件。每个包都要包含一个.dec(Package Declaration File)文件、一个 .dsc文件。如果这个包还用于固件Iamge或Option Rom Image的生成,则还需要添加 .fdf(Flash Description File)文件
2020-05-20 23:32:29
4325
原创 UEFI原理与编程第二章学习-其它类型的工程模块
其它类型工程模块 常用的工程模块除标准应用程序工程模块外,还有Shell应用程序工程模块、使用main函数的应用程序工程模块、库模块和驱动模块。下文依次对这几个模块进行简单的介绍。1、Shell应用程序工程模块从02_01-4可以看出,标准应用程序处理名师行参数很不方便?。而在Shell中执行的命令通常都会带有命令行参数。EDK2提供了一种特殊的应用程序工程模块,即Shell应用程序工程模块。该模块以 INTN ShellAppMain(IN UINTN Argc, IN CHAER
2020-05-20 08:22:14
936
原创 UEFI原理与编程第二章学习-UEFI标准应用工程模块文件介绍及编译流程
本文主要介绍了UEFI标准应用程序工程模块的入口函数、工程文件、编译和运行方法以及\.efi文件的加载过程
2020-05-18 20:58:28
3579
2
原创 在Windows环境下使用EDK2搭建UEFI开发环境
本文中所使用全部文件作者已经整理好了均可在 找到。UEFI概述 UEFI有多种实现方式,本文选取的是在Windows系统上使用EDK2实现UEFI。安装开发工具首先,安装VS2015(或以上),VS安装包可以从VS官网进行下载。安装Python2.7到C盘目录下,Python2.7可以从Python发布网站得到下载。安装好Python2.7后,在环境变量中添加一条Python2.7的地址。下载IASL编译器。在C盘创建UEFI文件,将下载好的IASL文件解压到UEFI文件夹中的iasl
2020-05-15 00:00:41
3548
原创 UEFI原理与编程第一章学习汇总
BIOSBIOS功能:加电自检程序,用于开机时对硬件的检测。系统初始化代码,包括硬件设备的初始化,创建 BIOS 中断向量等。基本的外围I/O处理的子程序代码。CMOS程序设置。BIOS工作流程:加电自检(Power On Self Test,POST):检测关机设备是否正常工作,设备设置是否与CMOS(CMOS是是电脑主板上的一块可读写的RAM芯片,常用来保存BIOS设置完电脑硬件参数后的数据)中的设置一致。如果出现硬件错误则发出警报(鸣笛)。POST检测通过后进行初始化初始化:初始
2020-05-13 14:40:01
3343
原创 UEFI启动阶段DXE-BDS-TSL-RT-AL以及总结_2020-05-13
DXE(Driver Execution Environment,执行驱动配置环境)阶段DXE阶段执行系统大部分的初始化工作。由于此阶段内存已经可以被正常使用,因此该阶段可以执行大量复杂的工作。从程序设计角度DXE阶段与PEI阶段相似。DXE阶段的功能:执行系统大部分的初始化工作提供系统表、启动服务以及Run Time Services。DXE划分:DXE内核:负责DXE的基础服务和执行流程DXE派遣器:负责调度执行DXE驱动,初始化系统设备。DXE执行流程:从..
2020-05-13 14:35:42
4201
原创 UEFI启动阶段学习SEC阶段和PEI阶段_2020-05-12
昨天学习了UEFI和BIOS的区别,以及UEFI系统的优点。今天学习UEFI系统驱动的七个不同阶段。UEFI系统的启动过程UEFI系统从加电到关机可分为以下七个阶段:SEC(安全验证)->PEI(EFI前期初始化)->DXE(驱动执行环境)->BDS(BS?)(启动设备选择)->TSL(操作系统加载前期)->RT(Run Time)->AL(系统灾难恢复期)其中,前三个阶段为UEFI初始化加载阶段,DXE阶段结束后UEFI环境已经准备完毕。BDS和T
2020-05-13 06:13:23
4627
原创 UEFI与BIOS的比较_2020-05-11
BIOS 学习UEFI前先了解一下BIOSBIOS功能:加电自检程序,用于开机时对硬件的检测。系统初始化代码,包括硬件设备的初始化,创建 BIOS 中断向量等。基本的外围I/O处理的子程序代码。CMOS程序设置。BIOS工作流程:加电自检(Power On Self Test,POST):检测关机设备是否正常工作,设备设置是否与CMOS(CMOS是是电脑主板上的一块可读写的RAM芯片,常用来保存BIOS设置完电脑硬件参数后的数据)中的设置一致。如果出现硬件错误则发出警报(鸣笛)。PO
2020-05-12 09:08:52
1083
原创 几种排序算法的总结(不定期更新)
O(n^2)双层n循环: 一次用于确定每个数字的位值,一层用于对所有元素确定位值。选择排序:每次遍历数组,选择出余下部分最小的值放到余下部分的头部。for (int i = 0; i < arr.size(); i++) int minT = i;for (int j = i; j < arr.length(); j++) if (arr[minT] > arr...
2020-04-24 13:41:17
130
原创 牛客网编程记录2020-03-31-13
牛客网 华为机试训练-13题目描述将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符。将一个英文语句以单词为单位逆序排放。示例输入: I am a boy输出: boy a am I思路 使用string类型的字符串存储数组。定义等长的char...
2020-03-31 22:11:35
158
原创 牛客网编程记录2020-03-21-12
题目描述写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)。输入N个字符,输出该字符串反转后的字符串。示例输入: abcd输出: dcba思路 ①使用getline()函数获取输入,用length()函数得到输入长度,再反向输出。 ②使用getline()函数获取输入后使用reverse()函数进行反转,再直接输出。代码...
2020-03-22 10:56:23
159
原创 C++中的指针、指针变量以及指向指针的指针
随着对指针的深入学习,不定期更新指针概念简介 指针:指向变量物理存储地址。 指针变量:存储指针的物理变量。 由于指针仅存储首物理地址,故不同类的变量需要不同类型的指针来区别所指变量的长度。 pointer=&i:将 i 的地址存入pointer(两者相同类型)。 *pointer:pointer所存储的地址中存储的值。代码#include<io...
2020-03-21 17:14:17
505
原创 C++Vector数组--根据使用情况持续更新
使用前置:#include<vector>常用赋值方式vector<type>a(size):开辟type类型size大小名字为a的空间,该空间初始值为0vector<type>b(size,value):开辟type类型size大小的空间,空间名为b,初始值为valuevector<type>c(a.begin()+i,a.begin()...
2020-03-20 16:54:05
1454
原创 牛客网编程总结2020-03-19_11
牛客网 华为机试训练-11题目描述输入一个整数,将这个整数以字符串的形式逆序输出程序不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001。输入一个int整数,将这个整数以字符串的形式逆序输出。示例输入: 001输出: 100编程思路 逆序输出 输入字符串均为数字、无空格也无负号,可以直接用getline()函数获取输入,使用strin...
2020-03-20 10:39:57
175
原创 2020-03-19_11-扩展
本文是2020-03-19_11的扩展题目描述一次输入多个数字,每个数字后要跟一个空格,输入的数字不限正负。逆序输出输入的数字。示例输入: -12 23 34输出: 34 23 -12编程思路 使用string类型的字符串获取输入,输入的字符有三类:①数字’0’~‘9’、②符号’-’、③空格’ ';其中空格可以用来区分数字,符号则要进行记录。可以先根据空格得到输入数字...
2020-03-20 10:35:08
164
原创 牛客网编程总结2020-03-17_10
牛客网 华为面试联系-10题目描述编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。输入N个字符,字符在ACSII码范围内,输出范围在(0~127)中不同字符的个数。示例输入: abcc输出: 3思路 因为知道ASCII码值的范围(0~127),故可以定义一个长度为128的数组...
2020-03-17 22:55:33
230
edk2-BaseTools-win32-master.zip
2020-05-15
MaxHeap.zip
2020-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人