自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 编译原理实验:正则表达式->NFA->DFA->最小化DFA图并生成词法分析程序

对于每个正则表达式运算符,“过滤”一遍队列,队头弹出一个DFA点,针对该运算符求出分裂后的新的DFA点(如果对于这个运算符的边到达了不同的之前的DFA点则分裂为两个),将分裂后的DFA结点插入队尾。对每个 # 入度为0的边开始 DFS ,知道遍历到边缘点,把所有遍历到的NFA点合成为一个DFA结点,因为经历了上面的合并操作后,会出现一个DFA点有两条相同字母的出边分别连向不同的DFA点的情况,然而这是不允许的(因为路径将是不确定的),所以接着要将两条相同字母边指向的 DFA点合并为一个DFA点。

2023-10-26 21:58:46 918 1

原创 基于哈夫曼编码实现压缩与解压缩

基于哈夫曼编码实现压缩与解压缩,C++实现,手写堆,哈夫曼树等数据结构,真正能输出压缩文本

2022-10-22 10:48:32 1720

原创 【小白入门】VsCode下载与配置C/C++环境

VsCode下载与配置C/C++环境一, VsCode的下载二,下载minGW三,配置环境变量四,VsCode配置一, VsCode的下载点击官网下载二,下载minGW点击官网下载windows版本下载之后点击安装一直continue之后会有这样一个页面一般勾选下载中间四个就够用了三,配置环境变量打开编辑系统环境变量选择环境变量后点击系统变量的Path打开接着进入minGW的安装文件夹的bin文件内,复制上方地址。新建环境变量输入刚才复制的地址打开cmd,输入gc.

2021-08-01 11:08:41 538

原创 浙江大学数据结构笔记:堆与并查集

浙江大学数据结构笔记:堆与并查集一,堆堆的表示堆的创建堆的插入堆的删除二,并查集:TSSN的实现按秩归并:路径压缩:一,堆堆分为大顶堆和小顶堆大顶堆每个结点比两个儿子大,小顶堆每个结点比两个儿子小一般用完全二叉树储存堆堆的表示typedef struct HeapStruct *MaxHeap;struct HeapStruct{ ElementType *Element;//储存堆元素的数组 指针 int Size;//堆当前元素个数 int Capacity;//堆的最大容.

2021-07-31 14:23:43 301

原创 图论笔记:网络流问题

图论笔记:网络流问题前言一、最大流最大流问题:Ford-Fullkerson方法Edmonds-Karp算法(EK):最大流建模:最小割问题:最小费用最大流:最大流问题变式:变式一:多源点多汇点变式二:无向图变式三:顶点上也有容量限制的情况前言 一、最大流最大流问题:Ford-Fullkerson方法Edmonds-Karp算法(EK):由于适用规模小所以用邻接矩阵存图1.找到一条增广路2.找到瓶颈正向路径减少flow,反向路径增加flow3.直到找不到增广路#include<b.

2021-07-31 09:41:47 394

原创 图论笔记:最小生成树问题

图论笔记:最小生成树问题前言一、 kruskal算法二、 prim算法三,最大生成树(kruskal实现)前言提示: 最小生成树(MST)是无向图中的一个常见问题,连通且不含有圈的图成为树。两种方法可以构造最小生成树T,都基于贪心法。一、 kruskal算法对边进行贪心操作,依次把剩下最短的边加入到T中。1.对边进行排序,依次把最短的边加入到T中2.并查集判断圈该算法复杂度要差一点,适用于稀疏图。以hdu1102为例#include<iostream>#include&l

2021-07-31 09:06:15 170

原创 图论笔记:最短路问题

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档图论笔记:最短路问题前言Bellman-Ford算法Dijkstra算法SPFA算法:前言 主要有Bellman-Ford,Dijkstra,SPFA等算法图的规模大且边的权值非负则用Dijkstra算法图的规模大且存在负边则用SPFA算法(链式前向星存图)但是不稳定,容易被卡极端数据 Bellman-Ford算法using namespace std;//bellman-ford最短路const int inf=

2021-07-30 16:02:02 115

原创 图论笔记:判断负环

图论笔记:判断负环前言SPFA+DFS判断负环前言 判断负环有SPFA+BFS和SPFA+DFS两种方法,但是第一种耗时较长故普遍使用SPFA+DFS判断负环 SPFA+DFS判断负环(用链式前向星存图)思路:一个点在一条路上出现多次即代表有负环//dfs-spfa判断负环int t;int inf=0x7f7f7f;int n,m,k,u,v,w;int dis[2600];bool vis[2600];int head[2600];bool flag;int cn...

2021-07-30 15:50:25 257

原创 图论笔记:欧拉路

提示: 由于本人水平有限,若有错漏欢迎指出图论笔记:欧拉路前言一、无向图求欧拉回路 (如果是有向图输出的是一个逆序的路径,可以用栈把逆序按正序打印出来)前言欧拉路是什么?欧拉路:从图中某个点出发遍历全图,每条边通过仅通过一次欧拉回路:起点和终点都相同的欧拉路只有连通图才存在欧拉路(可以用DFS或并查集判断连通性)存在欧拉路的充要条件存在欧拉回路存在欧拉路*无向图**每个结点都是偶点**只有2个奇点或每个结点都是偶点**有向图**每个点出度等于入度**

2021-07-30 15:41:26 116

原创 图论笔记:拓扑排序

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档图论笔记:拓扑排序前言一、 确定字典序最小的拓扑排序二, 按字典序从小到大输出所有拓扑排序三,拓扑序找环,判断是否有环四,判断有无环+反向建图前言 拓扑排序维基百科上的解释如下:当且仅当图中没有定向环时(即有向无环图),才有可能进行拓扑排序。任何有向无环图至少有一个拓扑排序。已知有算法可以在线性时间内,构建任何有向无环图的拓扑排序。在图论中,由一个有向无环图的顶点组成的序列,当且仅当满足下列条件时,才能称为该图的一个拓扑排序(

2021-07-30 15:22:53 461

原创 图论笔记:三种存图方法

图论笔记:三种存图方法一、 邻接矩阵二、 邻接表三,链式前向星存图(重点)一、 邻接矩阵 二、 邻接表三,链式前向星存图(重点)空间效率高,没有浪费const int num=1000005;struct edge{ int to,w,next;//表示该边的下一个结点,权重,该边的上一个结点为起点所连的上一条边}edge[num];int head[num];//记录每个结点所连的最后一条边int cnt;void init(){ for(int i=0;i&.

2021-07-30 11:32:09 232

原创 图论笔记学习笔记整理(更新中)

提示: 由于本人水平有限,如有错漏欢迎指出图论学习笔记整理前言一、 三种存图方法二、拓扑排序三,欧拉路四, 判断负环五,强连通问题七,最短路算法六,最短路算法八,网络流问题总结前言 参考资料《算法竞赛从入门到进阶》,《挑战程序设计竞赛》一、 三种存图方法 二、拓扑排序三,欧拉路四, 判断负环 五,强连通问题 七,最短路算法 六,最短路算法八,网络流问题总结...

2021-07-30 11:21:17 188

原创 Linux虚拟机下用gcc和g++编译运行

Linux虚拟机下用gcc 和g++编译运行一 编译查看C文件的汇编代码及运行C文件1.安装gcc在虚拟机桌面上打开终端输入sudo apt-get update输入密码后回车输入sudo apt-get install gcc安装完成后输入gcc -v查看版本2.我把一个test.c的C文件拖到虚拟机里面,输入gcc -Og -S test.c生成一个汇编代码S文件输入gcc -Og -c test.c生成一个O文件,这是个二进制文件,无法直接查看输入gcc

2021-07-27 11:16:36 3533 2

原创 【零基础】Github仓库内容上传与更新(更新中)

GitHub仓库内容上传与更新众所周知,GitHub 是一个著名的免费代码托管平台。下面介绍一些GitHub的仓库的创建,内容上传与更新的简单操作。文章目录GitHub仓库内容上传与更新准备一、创建一个GitHub仓库并上传代码二、更新仓库问题解决准备首先需要注册一个GitHub账号并且下载Git,把git和GitHub账号绑定。详见这篇博客连接到GitHub之后我们就开始吧。一、创建一个GitHub仓库并上传代码1.选择New repository2.在name里填写仓库的名字(最好是英

2021-07-24 15:22:17 857 1

原创 浙江大学数据结构练习笔记:链表,二叉树.二叉搜索树(更新中)

浙江大学数据结构练习笔记:链表与二叉树(更新中)由于本人水平有限,整理的代码若有错漏欢迎指出文章目录浙江大学数据结构练习笔记:链表与二叉树(更新中)线性结构:多项式加法(链表实现)二叉树:二叉树的储存:链表储存二叉树的遍历:前序遍历:递归实现中序遍历:递归实现后序遍历:递归实现层序遍历:队列实现先序遍历和中序遍历确定一颗二叉树:树的同构:二叉树的表示:静态链表建树:判断两棵树是否同构:线性结构:多项式加法(链表实现)#include<bits/stdc++.h>#include<

2021-07-20 15:39:48 139

原创 逆向工程入门:IDAwindows本地动态调试,linux远程动态调试及虚拟机配置

本人水平有限,有不当之处欢迎指出文章目录前言一、虚拟机配置二,IDA动态调试1.windows本地调试2.linux远程调试总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、虚拟机配置示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二,IDA动态调试1.windows本地调试.

2021-02-11 09:50:29 1958 1

原创 ctfhub:网鼎杯第一场2018 reverse-beijing题解

网鼎杯 beijing题解这是个linux逆向题,先拖入IDA分析main函数 v0 = sub_8048460(unk_804A03C); printf("%c", v0); fflush(stdout); v1 = sub_8048460(dword_804A044); printf("%c", v1); fflush(stdout); v2 = sub_8048460(dword_804A0E0);//不知道 printf("%c", v2); fflush(std

2021-02-07 17:02:10 773 1

原创 逆向迷宫题总结(持续更新) 2020华南师大CTF新生赛maze,攻防世界新手区:NJUPT CTF 2017,BUUCTF:不一样的flag

CTF逆向迷宫题总结(未完)**目录**CTF逆向迷宫题总结(未完)**(前言)一、 逆向迷宫题概述二、 具体题目分析1. 攻防世界新手区maze2.三,总结标题(前言) 本文将不断更新以具体题目为载体,分析CTF逆向迷宫题的解题思路与方法。由于本人新入坑CTF,学识有限,若有错漏或不当之处,欢迎指出。不喜轻喷提示:以下是本篇文章正文内容,下面案例可供参考一、 逆向迷宫题概述示例: 迷宫题当然是走迷宫最后得到flag啦!主要步骤:1.分析程序的主函数,找到迷宫(一般会在十六进制里可

2021-02-02 22:03:23 6547 6

原创 BUUCTF reverse:[GXYCTF2019]luck_guy,findit,简单注册器题解

[GXYCTF2019]luck_guy题解由于作者水平有限,有不当之处或有更好方法请在评论区指出题目地址https://buuoj.cn/challenges拖进IDA,查看main函数找到patch_me(0),里面可以看到,如果输入的是偶数就进入get_flag()函数。本题关键应该就在里面。打开后unsigned __int64 get_flag(){ unsigned int v0; // eax int i; // [rsp+4h] [rbp-3Ch] int j; //

2021-02-01 17:11:04 831

原创 封神台靶场尤里的复仇I第一第二第五第六第七章解题思路(持续更新)

提示:文## 标题章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一 .第一章二.第二章1.引入库2.读入数据一 .第六章总结提示: 本文按照靶场题目推进顺序进行,由于作者水平有限,有讲述不当之处敬请批评指出,有更好的解法欢迎在评论区发表。本文将持续更新。靶场地址https://hack.zkaq.cn/battle一 .第一章**sql注入**首先通过id=2判断是否存在sql注入![在这里插入图片描述](https://img-blog.csdnimg.cn/2021

2021-01-02 17:35:13 4628 4

基于哈夫曼编码的文本压缩解压缩程序包

使用C++多文件编程,纯手写堆和哈夫曼树数据结构实现英文文件内容的压缩和解压 压缩和解压模块互相独立 , 可扩展性强。

2022-10-22

基于哈夫曼编码的C++实现文件压缩解压代码包

使用C++多文件编程,纯手写堆和哈夫曼树数据结构实现英文小写文件内容的压缩和解压 压缩和解压模块互相独立 , 可扩展性强。

2022-10-20

空空如也

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

TA关注的人

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