自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 Linux学习笔记(7)正则表达式

Regular Expression正则表达式是处理字符串的方法,以行为单位进行字符串的处理操作,通过一些特殊付好的辅助可以轻易的完成查找删除操作。语系的问题 LANG=C语系,不同语系的语法规则不一样,需要特别注意。1.正则表达式与grep[:alnum:]//代表英文大小写字符和数字0-9 a-z A-Z[:alpha:]//代表任何英文字母大小写 a-z A-Z[:blank:]//代表空格和TAB[:cntrl:]//键盘上的控制键ctrl tab等[:digit:]//代表数字

2020-07-06 11:24:48 168

原创 Linux学习笔记(6)Linux的Shell

1.从变量开始先声明再使用!!!1.标题变量设置:$echo {变量名}//若该变量已存在,则可查看其内容$name=a//变量赋值unset {变量名}//取消变量设置a.变量与变量内容以一个等号连接.b.等号两边不能直接接空格。c.变量名开头不能是数字。d.单引号内为文本。父进程子进程://在父进程中定义的变量在子进程中无法使用$bash//开启子进程quit//返回2.环境变量env//显示所有已经设置的环境变量set//还会显示用户变量...

2020-07-04 10:15:41 122

原创 Linux学习笔记(5)Vim程序编辑器

vim welcome.txt//自动生成welcome文件并打卡vim编辑器会生成一个这样的文件,之后再次用上述指令打开则会提示改为vim welcome.txt.swp//则不会有提示出现。

2020-07-01 15:37:40 215

原创 Linux学习笔记(4)Linux目录配置

1.常规文件第一个字符为[-],例如-rwxrwxrwx,这类文件可细分为纯文本文件(ASCII)二进制文件(binary)数据文件(data)。可用cat指令去读取文件内容,但读取data会出现乱码。2.第一个字符为[d],即为目录,例如drwxrwxrwx。3.链接文件,类似于win系统的快捷方式,例lrwxrwxrwx。4.b开头为区块设备文件,约等于硬盘。c开头为字符文件,例如键盘鼠标。...

2020-06-27 18:09:48 108

原创 Linux学习笔记(3)Linux文件属性与权限

1.修改文件属性和权限chgrp//修改所属用户组 change groupchown//修改文件拥有者chmod//修改文件权限 可读可写可运行cp//复制文件到目标文件,但是权限也会被复制//运行以上指令时善用tab tab和 man防止用错特别提出chmod的用法r=4//可读的(read)w=2//可写的(write)x=1//可执行的(execute)chmod [-R] 770 txet.txt//-R操作 递归变更 将其子目录下所有文件都修改//owner=4+2+1=

2020-06-26 23:21:32 91

原创 Linux学习笔记(2)Linux简单命令学习

1.Linux中的大小写是不同的cd与CD不同。date和Date不同。2.Linux中命令行下以空格区分时多个空格等效为一个3.有时候命令行输入会乱码因为Linux支持多国语系,不支持以中文输出(大概就是为什么安装的时候经常 会出现乱码的原因吧)。4.nano文本编辑器命令行下nano即可打开,随后根据指示完成输入保存查找功能。5.基础命令操作TAB键单击可以补全太重要了所以放在前面,单击补全命令,双击补全文件,务必多用避免输入错误。date//显示日期与时间cal//显示日历的命令

2020-06-25 11:39:51 132

原创 Linux学习笔记(1)安装及图形界面无法切换过程中的问题

学习Linux从安装开始,虚拟机我选择了Vmware的workstation。链接如下:https://www.vmware.com/cn/products/workstation-player/workstation-player-evaluation.html下载Linux系统,国内有很多镜像站,其中我推荐阿里云,清华园的下载时断时续(也许是网络波动) 下载速度拉满,centos8不知道为什么没有中文,所以我下载了又卸载。所以慎重考虑最新版,奆佬除外。然后分区重启的时候需要登录,但是小键盘打不出数

2020-06-24 18:26:19 733

原创 一个复杂度是O(n)的求最大子列和的办法

int Maxsubseqval(int a[],int N)//N是数组长度{ int Thisnum,Maxnum; Thisnum=Maxnum=0; for(int i=0;i<N;i++) { Thisnum+=a[i]; if(Thisnum>Maxnum)//始终找最大的子列出现就记录下来 { Maxnum=Thisnum; } else if(

2020-06-06 21:26:49 84

原创 从零开始的数据结构学习日记(十九)——1.19树表的查找

1.1二叉排序树构造二叉排序树是为了加速查找,而非排序。故二叉排序树又称二叉查找树。其优点有:实现简单,能够进行有序性相关操作。缺点有:查找效率完全依赖于二叉树的形态,没有性能的保证,链接需要额外的空间。1.定义二叉排序树:或是空树,或者满足如下性质的非空二叉树:(1)若它的左子树非空,则左子树上所有的结点的值均小于根结点的值。(2)若它的右子树非空,则右子树上所有的值均大于根结点的值。...

2020-02-12 10:35:40 91

原创 从零开始的数据结构学习日记(十八)——1.18生成树和最小生成树

1.1生成树连通图G中n个顶点以及由出发点依次访问其余n-1个顶点所经过的n-1条边就构成了G的极小连通子图,出发顶点为生成树的根,极小是指子图具有连通所需的最小边数,若去掉一条边,该子图就变成了非连通图,任意增加一条边,该子图就有回路产生。1.2最小生成树给定一个连通网络,要求构造具有最小代价的生成树,即生成树各边的权值总和达到最小。构造最小生成树主要有以下两种算法:1.Prim算法以...

2020-02-11 14:35:18 96

原创 从零开始的数据结构学习日记(十七)——1.17图的遍历

图的任意顶点都有可能和其他顶点相邻接,因此在访问某个顶点之后可能沿着某条路径又回到了该顶点上。为了避免对于一个顶点重复访问,可以设置一个辅助数组visited[n],用于标记访问过的顶点。1.1深度优先遍历假设初始状态图中的所有顶点都未被访问,步骤如下:1.选取图中某一顶点vi为出发点,访问并标记该顶点。2.以vi为当前顶点,依次搜索vi的每个邻接点vj。若vj已被访问过,则搜索vi的下一...

2020-02-11 10:48:07 133

原创 从零开始的数据结构学习日记(十六)——1.16图的邻接矩阵和邻接链表的对比

图的邻接矩阵和邻接链表的对比:1.邻接链表中结点的链接次序取决于邻接表的建立算法和边的输入次序,因此图的邻接表表示不是唯一的;而图的邻接矩阵表示是唯一的。2.要判断某条边和弧边是否为同一条边,在邻接矩阵表示中只需随机读取对应矩阵单元的元素值,判断其是否为零即可;而在邻接表中需要扫描顶点对应的邻接链表,最坏情况下需要扫描时间为O(n)。3.计算图中边的数目时,对于邻接矩阵必须对其整个扫描后才可...

2020-02-10 16:41:10 391

原创 从零开始的数据结构学习日记(十五)——1.15哈夫曼树(最优二叉树)

1.1最优二叉树1.基本概念1)路径长度:连接两结点的路径上的分支数。2)树的路径长度:各结点到根结点的路径长度之和。3)最优二叉树或哈夫曼树:带权路径长度最小的二叉树。4)树的带权路径长度:树的所有叶子结点的带权路径长度之和,记为WPL。2.哈夫曼树的构造1)由给定的n个权值{w0,w1…wn},构造具有n棵二叉树的森林F,其中每一棵二叉树T只有一个带有权值w的根结点,其左右子树均...

2020-02-09 11:11:24 169

原创 从零开始的数据结构学习日记(十四)——1.14树和森林

1.1树的存储结构1.双亲表示法树的每个结点都有唯一的双亲,基于这一性质,可以用连续的一组空间存储树的结点,同时在每个结点中附设一个指示器指示其双亲结点在链表中的位置。双亲表示法可以方便地查找结点的双亲和祖先,但是查找孩子结点或者子孙时需要遍历整个树结构。#define maxsize 100typedef struct{ datatype data; int parent;}PT...

2020-02-08 16:54:22 175

原创 从零开始的数据结构学习日记(十三)——1.13线索二叉树

线索二叉树的实质就是将非线性结构的二叉树按照某种遍历序列线性化。1.1线索二叉树的存储结构结点结构如下:[lchild |ltag |data |rtag |rchild]ltag=0时,lchild域指示结点的左孩子;ltag=1时,lchild域指示结点的前驱;rtag同里。结构体类型定义如下:typedef char datatype;typedef struct node{...

2020-02-08 10:59:48 158

原创 从零开始的数据结构学习日记(十二)——1.12二叉树的遍历

1.1深度优先遍历

2020-02-06 17:39:16 139

原创 从零开始的数据结构学习日记(十一)——1.11树和二叉树

1.1树1.树的基本术语:1.结点:包含一个数据元素及若干指向其子树根的分支。2.结点的度:结点拥有的子树个数。3.叶子(终端结点):度为0的结点。4.非终端结点:度不为0的结点。5.结点的层次:树中根结点的层次为1,根结点子树的根为26.树的度:树中所有结点的度的最大值。7.树的深度:树中结点层次的最大值。8.森林:m棵互不相交的树的集合9.有序树、无序树:如果树中每棵子树从...

2020-02-04 19:56:15 176

原创 从零开始的数据结构学习日记(十)——1.10数组和广义表

1.1数组的存储结构1.行优先存储结构将数组元素按行向量的顺序存储,即第i+1行的元素放在第i行的元素之后,元素存储的线性序列为:a11,a12…,a1n,a21,a22…,a2n…2.列优先存储结构将数组元素按列向量的顺序存储,即第j+1行的元素放在第j行的元素之后,元素存储的线性序列为:a11,a12,…,am1,a12,a22,…,am2…1.2广义表广义表中的数据元素可以是原子...

2020-02-03 15:33:00 102

原创 从零开始的数据结构学习日记(九)——1.9KMP算法

1.1KMP算法先给出KMP算法伪代码:1.在目标串T和模式串P中分别设置比较的起始下标i和j2.当(i<n&&j<m)时,重复以下操作,直到目标串T或者模式串P的字符都比较完毕——2.1如果T[i]等于p[i],则继续比较T和P的下一对字符——2.2否则将模式串P的下标j回溯到P中的next[j]位置,即j=next[j]——2.3如果j=-1,则将下标i...

2020-02-02 16:36:22 484

原创 从零开始的数据结构学习日记(八)——1.8串的简单模式匹配算法

1.1简单的模式匹配算法以下为顺序串的简单模式匹配算法,利用i和j记录当前的匹配位置,从目标串T的第pos个字符开始比较,若相等则比较后续的字符,若不相等则回溯到目标串的下一个字符开始与模式串的第一个字符比较。int index(seqstring*T,seqstring*p,int pos){ i=pos; j=1; while(i<T->length&&...

2020-01-31 17:01:36 141

原创 从零开始的数据结构学习日记(七)——1.7串

1.1串串是由多个或零个字符组成的有限序列,串中任意个连续的字符组成的子序列称为该串的子串,包含的字串的串称为主串。子串在主串中的序号定义为子串在主串中首次出现的位置序号。空串是任意串的子串,任意串是自身的子串。1.2顺序串及基本运算串的顺序存储结构称为顺序串,与线性表的顺序存储结构类似,顺序串用一组地址连续的存储单元来存储串值,每个结点是单个字符。#define maxsize 256...

2020-01-30 22:54:43 162

原创 从零开始的数据结构学习日记(六)——1.6链队列

1

2020-01-29 17:12:46 124

原创 从零开始的数据结构学习日记(五)——1.5顺序队列

1.1顺序队列队列和栈类似,都是运算受限的线性表,只允许在表的一端进行插入,该端称为尾,在另一端进行删除,该端称为头,队列遵循先进先出的原则。类型定义如下:typedef struct{ datatype data[maxsize]; int front;//front指向队头元素前一个的位置 int rear;//对尾元素的位置}SeQueue;SeQueue *sq=(SeQ...

2020-01-27 16:28:21 144

原创 从零开始的数据结构学习日记(四)——1.4链栈

1.1链栈栈的链接存储结构称为链栈,用单链表来表示,类型定义如下:typedef struct node{ datatype data; struct node*next;}StackNode;//链栈结点类型typedef struct{ StackNode*Top;//指向栈顶结点的指针}LinkStack;1.2链栈的基本运算1.2.1栈初始化建立空链栈void...

2020-01-27 11:12:32 377

原创 从零开始的数据结构学习日记(三)——1.3顺序栈

1.空间特性顺序表的存储空间是静态分配的,在程序

2020-01-26 23:44:34 141

原创 从零开始的数据结构学习日记(二)——1.2链表

11

2020-01-22 15:47:40 164

原创 从零开始的数据结构学习日记(一)——1.1顺序表

一.顺序表1.类型#define maxsize1024typedef int datatype;//改类型的话改int成别的就行了typedef struct{ datatype data[maxsize]; int last;//表示顺序表的长度}sequenlist;

2020-01-20 18:29:04 330

空空如也

空空如也

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

TA关注的人

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