自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

啃梨的博客

专注、热爱、 全心贯注于你所期望的事物上,必有收获

  • 博客(67)
  • 资源 (1)
  • 收藏
  • 关注

原创 重学数据结构:三对角矩阵公式推导过程

文章目录三对角矩阵概念公式推导过程(下标为1的情况)三对角矩阵概念公式推导过程(下标为1的情况)k=2i+j-3推导过程:当i=1时,只有两个元素。当i=2~i-1时,每一行都有三个元素。在最后的i行,有j-i+1个元素。*k= 2+(i-1-2+1)3 + (j-i+1)= 2i+j-3i=(k+1)/3+1,j=k-2i+3推导过程:ijk11012121222323432533634

2021-04-21 15:13:48 7703 5

原创 重学数据结构:循环队列(C语言)

文章目录循环队列的概念循环队列的存储溢出问题(满,空)及解决方案循环队列的代码实现循环队列的代码实现测试循环队列的代码实现测试结果循环队列的概念将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列(Circular Queue)。循环队列是把顺序队列首尾相连,把存储队列元素的表从逻辑上看成一个环,成为循环队列。循环队列的存储溢出问题(满,空)及解决方案问题描述:循环队列都会有队列的头指针和尾指针,而且循环队列一般用数组来定义长度,也就是说长度是有限的,头指针一般

2021-04-20 16:35:29 235

原创 重学数据结构:树的层序遍历(C语言)

文章目录树的层序遍历层序遍历代码测试代码测试结果其他用到的代码树的层序遍历顾名思义,就是一层一层的输出内容。要实现这个功能,需要用到我们之前学到的队列的相关操作。以二叉树为例,,根节点先输出,遍历所有节点,把当前节点的左右子节点也加入队列,若当前列队不为空,则输出队头节点,并获取对头节点的左右子节点加入队列,直到队列为空。层序遍历代码//层序遍历bool LevelOrder(BiTree tree){ if(tree==NULL) return false; LinkQueue *

2021-02-25 16:54:39 464 1

原创 重学数据结构:树的遍历:前序、中序和后序(C语言)

文章目录树的存储结构树的遍历前序遍历中序遍历后序遍历代码三种遍历的作用树的存储结构typedef struct BiNode{ int data; struct BiNode *left,*right;}BiNode,* BiTree;树的遍历用以下二叉树作为例子,便于演示和理解。void InitTree(BiTree &root){ root=(BiTree)malloc(sizeof(BiNode)); root->left=(BiNode

2021-02-23 17:15:05 313

原创 重学数据结构:树的定义、性质

文章目录树的定义树的性质节点数=度数+1度为m的树和m叉树的关系度为m的树第i层最多有mi-1个节点高度为h的m叉树最多的节点有(等差数列求和=m0+m1+m2+......+mh)高度为h的m叉树至少有h个节点高度为h且度为m的树至少有树的定义树的性质节点数=度数+1度为m的树和m叉树的关系度为m的树m叉树定义树的所有节点相同点不同点1不同点2度为m的树第i层最多有mi-1个节点高度为h的m叉树最多的节点有(等差

2021-02-09 10:17:42 229

原创 重学数据结构:串的匹配算法(C语言)

文章目录朴素模式匹配算法测试代码测试结果KMP算法求模式串的Next数组KMP算法优化求模式串的NextVal数组朴素模式匹配算法算法描述:定位操作。若主串S中存在与串T值相同的子串,则返回它在主串S中第一次出现的位置;否则函数值为0。算法思想:就是把比較主串字符串一位一位地跟模式字符串相比,比较简单粗暴。算法缺点:当某些子串与模式串能部分匹配时,主串的扫描指针 i 经常回溯,导致时间开销增加//朴素匹配算法int SimpleIndex(String S,String T){ in

2021-02-01 11:34:49 314 8

原创 重学数据结构:串的基本操作(C语言)

串的结构赋值操作StrAssign(&T,chars):赋值操作。把串T赋值为chars。赋值操作StrCopy(&T,S):复制操作。由串S复制得到串T。StrEmpty(S):判空操作。若S为空串,则返回TRUE,否则返回FALSE。StrLength(S):求串长。返回串S的元素个数。ClearString(&S):清空操作。将S清为空串。DestroyString(&S):销毁串。将串S销毁(回收存储空间)。Concat(&T,S1,S2):

2021-01-26 10:58:05 3964 1

原创 重学数据结构:栈的应用-逆波兰表达式(C语言)

表达式求值波兰表示法(Polish notation,或波兰记法),是一种逻辑、算术和代数表示方法,其特点是操作符置于操作数的前面,因此也称做前缀表示法。如果操作符的元数(arity)是固定的,则语法上不需要括号仍然能被无歧义地解析。波兰记法是波兰数学家扬·武卡谢维奇1920年代引入的,用于简化命题逻辑。“ 扬·武卡谢维奇本人提到:我在1924年突然有了一个无需括号的表达方法,我在文章第一次使用了这种表示法。 ”—— Łukasiewicz(1), p. 610, footnote.阿隆佐·邱

2020-12-28 23:17:04 279

原创 重学数据结构:栈的应用-括号匹配(C语言)

文章目录栈的数据结构栈初始化判断栈空判断栈满获取栈顶元素压栈退栈判断元素是否在数组中左右括号匹配括号匹配测试数据测试结果栈的数据结构typedef struct{ int top; char *data;}SqStack;栈初始化void InitStack(SqStack *S){ S->top=-1; S->data=new char[MaxSize-1]; for(int i=0;i<MaxSize-1;i++) {

2020-12-28 13:07:58 222

原创 重学数据结构:队列的链式实现的各种操作(C语言)

文章目录队列的链式定义队列的链式实现分类有头节点的链式队列链式队列初始化(有头节点)判断队空(有头节点)链式队列的创建(有头节点)打印链式队列(有头节点)入队(有头节点)出队(有头节点)获取队头元素(有头节点)无头节点的链式队列链式队列初始化(无头节点)链式队列的创建(无头节点)打印链式队列(无头节点)入队(无头节点)出队(无头节点)获取队头元素(无头节点)队列的链式定义队列的链式实现分类分为有头节点和无头节点有头节点的链式队列链式队列初始化(有头节点)判断队空(有头节点)链式队列的创建(有头

2020-12-24 23:14:13 436

原创 重学数据结构:队列的顺序实现的各种操作(C语言)

文章目录队列的顺序实现定义队列初始化判断队满判断队空创建队列打印队列入队退队测试代码测试结果队列的顺序实现定义队列的定义和顺序表、顺序栈其实差不多,只不过有两个变量来记录队列头,尾,操作不尽相同,队列只能在尾部插入,头部退列typedef struct { int data[MaxSize]; int front,rear; //队头队尾}SqQueue;队列初始化void InitSqQueue(SqQueue *Q){ Q->front=0; Q->re

2020-12-22 16:32:34 155

原创 重学数据结构:链栈的各种操作(C语言)

链栈的定义其实跟链表的结构是一样的,连同操作基本一样,但是链栈只能在一端进行删除节点和增加节点.typedef struct LNode{ struct LNode *next; int data; int maxsize;}LNode,* LinkStack;头插法建立链表(带头节点)LinkStack link_HeadInsert(){ LinkStack head=(LinkStack)malloc(sizeof(LinkStack)); head->n

2020-12-22 11:42:35 170

原创 重学数据结构:顺序栈的各种操作(C语言)

顺序栈的定义#define MaxSize 50#define bool int#define true 1#define false 0;typedef struct{ int top; int data[MaxSize];}SqStack;判断栈空bool IsEmpty(SqStack S){ if(S.top==-1) return true; else return false;}判断栈满boo

2020-12-21 21:16:07 149

原创 重学数据结构:静态链表的各种操作(C语言)

静态链表定义#include <stdio.h>#include <string.h>#define maxSize 50typedef struct{ int index; int data;}StaticLink[maxSize];初始化链表void InitStaticLink(StaticLink L){ L[0].index=-1; for (int i=1; i<maxSize; i++) {

2020-12-18 22:12:42 146 2

原创 重学数据结构:循环链表的各种操作(C语言)

循环单链表定义其实这里定义的结构跟单链表的没什么区别,只不过在初始化或操作数据的时候,要把next指针指向链表的头指针。#define bool int#define true 1#define false 0typedef struct LNode{ struct LNode *next; int data;}LNode,*ScLinkList;初始化void InitList(ScLinkList L){ L=(LNode *)malloc(sizeof(LN

2020-12-17 19:38:01 149

原创 重学数据结构:双向链表的各种操作(C语言)

双向链表定义#define bool int#define true 1#define false 0typedef struct DLNode{ struct DLNode *next; struct DLNode *prior; int data;}DLNode,*DLinkList;初始化双向链表(前插值)DLinkList InitDLinkList(DLinkList L){ L=(DLinkList)malloc(sizeof(DLinkL

2020-12-16 22:43:47 141

原创 重学数据结构:顺序表的各种操作(C语言)

顺序表(静态)的定义#define MaxSize 50typedef struct{ int array[MaxSize];int length; //数组当前长度}SeqList;初始化数组void InitList(SeqList *L){for(int i=0;i<MaxSize;i++){ L->array[i]=0;}L->length=0;}打印数组内容void PrintList(SeqList L){ for

2020-12-16 17:07:28 96

原创 重学数据结构:单链表的各种操作(C语言)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以

2020-12-16 16:04:40 284

原创 ARTS 第九周

Algorithm:传送门Review:传送门Tips:传送门Share:传送门

2019-08-29 11:30:11 148

原创 重温计算机组成原理:原码、反码、补码、移码

重温计算机组成原理:原码、反码、补码、移码原码原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。原码不能直接参加运算,可能会出错。例如数学上,1+(-1)=0,而在二进制中原码00000001+10000001=10000010,换算成十...

2019-08-29 11:29:10 379

原创 在PowerDesign上增加注释,创建表把中文名称添加到注释

在PowerDesign上增加注释,创建表把中文名称添加到注释修改表注释进入Database->Edit Curent DBMS选script->Objects->Table->TableComment,修改注释为comment on table %TABLE% is '%COMMENT%';修改字段注释进入Database->Edit...

2019-08-29 11:28:32 833

翻译 深入计算机系统:操作系统管理硬件(The Operating SystemManages the Hardware)

文章目录1.7 操作系统管理硬件(The Operating SystemManages the Hardware)1.7.1 进程1.7.2 线程1.7.3 虚拟内存1.7.4 文件系统1.7 The Operating System Manages the Hardware1.7.1 Processes1.7.2 Threads1.7.3 Virtual Memory1.7.4 Files1...

2019-08-29 11:24:42 1756

原创 LeetCode:10.表达式匹配(Regular Expression Matching)

10.表达式匹配(Regular Expression Matching)给定参数字符串s和匹配表达式p,实现支持 . 和 * 的表达式匹配,需要匹配整个字符串(而不是其中一部分)。说明字符串s可以为空,可以只包含小写字母a-z。匹配表达式p可以为空,可以只包含小写字母a-z,也可以是 . 或 * 。例子1输入: s=“aa” p=“a”输出: false说明: 匹配表示...

2019-08-29 11:22:48 161

原创 ARTS 第八周

Algorithm:传送门Review:传送门Tips:传送门Share:传送门

2019-08-18 12:21:04 95

原创 LeetCode:判断字符串是否回文(Palindrome Number)

8.判断字符串是否回文(Palindrome Number)例子1:Input: 121Output: true例子 2:Input: -121Output: false说明:从左到右,它显示为-121。 从右到左,它变成121-。 因此它不是回文。例子3:Input: 10Output: false说明:从右到左读取01。 因此它不是回文。 ...

2019-08-18 12:19:04 580

原创 深入理解计算机系统:1.6 存储设备的层级(Storage Devices Form a Hierarchy)

1.6 存储设备的层级一般的情况,会选择在处理器和大容量速度慢的存储设备之间增加一个小容量速度快的存储设备,事实上,在每一台计算机系统中存储设备的层级关系如图1.9所示。当我们从层级的顶端到底层,设备的容量会越来越大,速度越来越慢,价格越来越便宜。寄存器作为层级的顶端,也是第0级或L0.这里展示的是高速缓存的L1~L3,主存在第4层,本地硬盘在第5层,外设在第6层。存储设备分层的主要目的是高...

2019-08-18 12:11:36 608

原创 Visual Studio配置log4net

文章目录Visual Studio配置log4net添加Log4.net.dll的引用添加配置添加Log类发布并查看结果常见问题:配置好了并没有在目录下创建LOG文件夹并增加日志信息(因为配置文件没有复制到输出目录)Visual Studio配置log4net添加Log4.net.dll的引用添加配置AssemblyInfo.cs[assembly: log4net.Config....

2019-08-18 12:07:33 953

原创 重温计算机组成原理:指令寻址方式

重温计算机组成原理:指令寻址方式立即寻址在指令中直接给出操作数。直接寻址(Direct Addressing Mode)在指令中直接给出操作数所在的主存存储单元的地址。间接寻址(Indirect Addressing Mode)指令中给出的地址码是存放操作数的有效地址的存储单元地址。寄存器直接寻址(Register Mode)寄存器寻址是指操作数存放在CPU的寄存器中,指令中给...

2019-08-18 12:03:50 1001

原创 ARTS 第七周

Algorithm:传送门Review:传送门Tips:传送门Share:传送门

2019-08-08 09:51:49 195

原创 LeetCode:8.字符串转整型 (String to Integer (atoi))

文章目录8.字符串转整型 (String to Integer (atoi))说明样例1样例2样例3样例4样例 5实现代码Note:Example 1:Example 2:Example 3:Example 4:Example 5:8.字符串转整型 (String to Integer (atoi))实现把字符串转成整型。函数首先把所有的空格去掉直到第一个字符不是空格,然后取出一个正负号,...

2019-08-08 09:49:16 207

翻译 深入计算机系统:1.5 高速缓存的重要性(Caches Matter)

文章目录1.5 高速缓存的重要性1.5 Caches Matter1.5 高速缓存的重要性从这个简单的例子来看,系统花费大量的时间把信息从一个地方移动到另一个地方。在hello程序中的机器指令一开始是存在硬盘上的,当程序被加载的时候,会把这些指令拷贝到主存。当处理器运行这段程序,指令又被拷贝到处理器。简单来说,数据字符串"Hello,World\n",一开始在硬盘,然后拷贝到主存,最后是到显示...

2019-08-07 16:44:27 395

原创 CSDN MarkDown使用方法

文章目录数学公式生成目录结构改变字体颜色数学公式$$(-1)^s \times 1.f \times 2^e$$(−1)s×1.f×2e(-1)^s \times 1.f \times 2^e(−1)s×1.f×2e具体可看这个博客:https://blog.csdn.net/qq_42446456/article/details/82927855生成目录结构@[toc]改变字体...

2019-08-07 11:40:33 234

原创 重温计算机组成原理:浮点数

<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"><style>h1,h2,h3,h4,h5,h6,p,blockquote { margin: 0; padding: 0;}body { font-family: "Helvetica Neue", Helvetica, "Hiragino

2019-08-07 11:21:06 672

原创 ARTS 第六周

Algorithm:传送门Review:传送门Tips:传送门Share:传送门

2019-08-01 11:58:19 103

原创 Http Cookie 定义和使用

Http Cookie基本知识Cookie定义http cookie也叫做web cookie或browser cookie,一般是服务器主动发给客户端,客户端存储下来,下一次请求的时候携带这部分的内容一起发给服务器。一般用作于用户登录后,记录用户唯一标识的,减少重复的请求。主要用途会话管理:包括用户登录、购物车、游戏分数等用户自定义:主题、用户标识轨迹跟踪:用于记录用户习...

2019-08-01 11:56:13 488

原创 在centos上安装gcc并执行c语言程序

在centos上安装gcc并执行c语言程序从centos镜像文件中的package文件夹拷贝以下文件python-iniparse-0.4-9.el7.noarch.rpmpython-urlgrabber-3.10-9.el7.noarch.rpmrpm-4.11.3-35.el7.x86_64.rpmyum-3.4.3-161.el7.centos.noarch.rpmyum...

2019-08-01 11:04:54 1021

原创 LeetCode:翻转字符串(7. Reverse Integer)

LeetCode:7. Reverse IntegerGiven a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123Output: 321Example 2:put: -123Output: -321Example 3:Input: 120Output: 21Note...

2019-08-01 10:38:51 155

原创 深入理解计算机系统:1.4 处理器读取并解释在存储中的指令(Processors Read and Interpret Instructions Stored in Memory)

1.4 处理器读取并解释在存储中的指令(Processors Read and Interpret Instructions Stored in Memory)现在我们的hello.c源程序被编译器翻译成可执行对象文件,这个文件叫做hello并存储在硬盘中。要执行这样的文件在Unix系统中,我们需要在shell中输入程序的名称。linux> ./hellohello, worldl...

2019-07-31 09:48:09 1076

原创 ARTS 第五周

Algorithm:传送门Review:传送门Tips:传送门Share:传送门

2019-07-24 16:39:50 141

翻译 深入理解计算机系统:1.3 了解编译系统是如何工作是很有必要的(It Pays to Understand HowCompilation Systems Work)

1.3 了解编译系统是如何工作是很有必要的(It Pays to Understand HowCompilation Systems Work)例如以上举例的 “Hello.c”简单C语言程序,我们需要依赖编译系统生成正确而且有效的机器码,所以这就是为什么程序员需要了解编译系统是如何工作的?优化程序性能。现代的编译器是复杂的工具而且会生成做正确的机器码。作为程序员,为了写出更有效率的代码我...

2019-07-24 16:38:59 319

TestFlight操作步骤(给客户看的)

TestFlight操作步骤(给客户看的)

2013-05-07

空空如也

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

TA关注的人

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