自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++ 正则处理

头文件C++正则都在#include<regex>中基本文法符号含义^匹配行的开头$匹配行的结尾.匹配任意单个字符[…]匹配[]中的任意一个字符(…)设定分组\转义字符\d匹配数字[0-9]\D\d取反\w匹配字母[a-z],数字,下划线\W\w取反\s匹配空格\S\s取反+前面的数字重复一次或多次*前面的元素重复任意次?前面的元素重复0次或1次{n}

2021-10-28 10:57:25 643

转载 windows下Opencv配置

主要参考额外参考

2021-10-12 14:18:00 147

原创 Git使用记录(本地库与GitHub串讲)

Git起源与简介在2005年由Linux之父Linus使用C语言开发,目的是为了很好的管理Linux内核的源代码,之后,Git日臻成熟完善,得到了广泛的应用。Git具有以下优势:直接记录快照,而非差异比较;几乎所有操作都是本地执行;Git 保证数据完整性;Git 一般只添加数据;Git文件Git文件有三种状态:已提交(committed)保存至本地数据库已修改(modified)修改了文件,但仍未保存到数据库已暂存(staged)对一个已经修改的文件做了标记,包含在下次提交的快照

2021-09-24 16:46:24 290

原创 Go——vscode配置Gin,有效解决cannot find module providing package github.com/gin-gonic/gin问题与红色波浪线问题

vscode配置Gin接下来的步骤需要你保证自己已经建立了基本的go环境创立工作区文件夹下载Gin环境依赖,(注意此步中需要终端进入所在工作区文件夹输入)go get -u github.com/gin-gonic/gin建立modgo mod init 文件夹名(此命令须进入文件夹执行)继续完善依赖,下载到本地go mod download增加缺少的module,删除无用的modulego mod tidy至此,可以运行Gin官网的示例package mainimport

2021-09-19 16:07:47 2399 4

原创 GO语言之使用自定义包

什么是package与预备检查操作package是为了组织好自己的代码,方便复用一些常用函数而创建使用前,首先确认自己的GO111MODULE为auto,这个通过命令行输入以下代码进行查看:go envauto表示go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:当前目录在GOPATH/src之外且该目录包含go.mod文件当前文件在包含go.mod文件的目录下面。如果不是auto的话,通过命令进行修改go env -w GO111MODULE=auto

2021-09-15 21:23:45 1024

原创 数位DP总结

题目类型数位DP题目往往呈现出如下题目特征:给定一个闭区间[L,R], 求这个区间中满足某个条件的数的总数量题目示例某人命名了一种不降数, 这种数字必须满足从左到右各位数字呈非下降关系, 如123, 446现在大家决定玩一个游戏, 指定一个整数闭区间[a,b], 问这个区间内有多少个不降数.解决思路1.转换范围首先把统计[L,R]范围内满足条件的数字转化成统计[0,N]内满足条件的数字数量.则ans [L,R] = ans[0,R] - ans[0,L-1]这样就把双边界改为了只需要考虑上

2021-08-27 16:38:40 108

原创 重装Windows系统 (以联想Y700重装Win10专业版为例)

前段时间新购置了联想小新14pro,旧的联想Y700退下来后想着给爸妈还能发光发热几年,趁着高温假带了回来并进行整理。1.下载系统首先准备一个大于16GB,内无文件(因为下载安装系统程序后会被清空)的U盘,再从windows官网下载入U盘即可,(别再用各种来路不明的安装,然后带着一堆问题到处问人)官网地址点击这里点击页面中部有一个立即下载工具,然后选择下载到U盘中,中间选择USB即可,然后等他自己完事。2.磁盘准备可以提前打开自己的笔记本,规划一下新的磁盘分区,该备份的文件都整理好后,右键此电脑

2021-08-03 10:32:15 6970 1

原创 联想小新pro14-5800U外接显示器无法显示解决

方法一:硬件故障,插拔扩展坞、HDMI线,是否有改善,若恢复则继续使用,无效果见下条。方法二:升级BIOS1.进入联想服务网站,查询本机适配BIOS,输入笔记本后面的S/N序列号,进入后页面如下2.点击驱动下载,拉到最下面,选择BIOS中的下载,下载至默认位置运行程序3.一路选择是,next,accept之类的,到最后install,然后会自动重启升级,这个过程中风扇会很响,要保证自己不要进行任何操作,全流程自动完成,结束后重新进入,此时显示器恢复显示。4.验证,进入系统,按键盘的WIN+

2021-06-20 08:38:38 11854

原创 C++——整数快速幂与矩阵快速幂

整数快速幂传统情况下求解整数快速幂,需要使用一个for循环,不断乘,循环n-1次整数快速幂的思路在于x^(m+n) = x^(n) * x^(m),以此通过不断将原始整数累乘,这里设定幂依次为1,2,4,8……可以看到正好为二进制进位,因此利用将次数转为二进制编码,如9的二进制编码应为1001,来简化计算过程以下是代码:int quickpow(int x,int n){ int res = x; int ans = 1; while(n){ if(n&amp

2021-06-04 19:25:22 537

转载 Shell脚本学习5——输入输出重定向

命令说明command > file将输出重定向到 file。command < file将输入重定向到 file。command >> file将输出以追加的方式重定向到 file。n > file将文件描述符为 n 的文件重定向到 file。n >> file将文件描述符为 n 的文件以追加的方式重定向到 file。n >& m输出文件 m 和 n 合并。n <& m...

2021-06-03 10:38:07 110

转载 Shell脚本学习4——if else/for/while/until/case/函数

if elseif conditionthen command1 elif condition2then command2else commandfi其中 elif 和else是可选的,若无内容就不要写forfor var in item1 item2 ... itemNdo command1 command2 ... commandNdonewhilewhile conditiondo commanddoneunti

2021-06-03 10:23:56 87

转载 Shell脚本学习3——echo、printf、test命令

echoecho string实现将字符串输出显示变量read命令可实现从标准输入中读取一行,并赋给指定shell变量read nameecho "$name is a good man"换行与不换行换行:echo -e "111\n" #-e 开启转义不换行echo -e "111\c" #\c 不换行结果定向至文件echo "good" > file1保持原状输出使用单引号echo '$name\"'显示命令执行结果使用反引号,而不是单引号echo

2021-06-01 11:40:06 246

转载 Shell脚本学习2——参数传递与运算符

传递参数脚本内获取参数格式为:$n,n代表数字,默认$0表示执行的文件名,1为第一个参数,以此类推echo "执行的文件名:$0";echo "第一个参数为:$1";执行时直接向后一次输入即可$ chmod +x test.sh $ ./test.sh 1 2 3参数说明$#传递到脚本的参数个数$*展示所有传递的参数,“123”1个参数$@“@”等价于“1”,“2”,“3”三个参数$$脚本运行的进程ID$?显示最后命令的退出状态基

2021-06-01 11:15:29 297

原创 C++——转换标准函数式为逆波兰表达式并计算结果

前缀、中缀、后缀表达式开宗明义,首先搞清楚概念前缀表达式(波兰表达式):运算符位于操作数之前,如*34中缀表达式(常见数学表达式):如(3+4)*5后缀表达式(逆波兰表达式):如34+5*如何将中缀表达式转换为逆波兰表达式算法:使用两个栈,一个符号栈,一个运算栈具体计算规则如下:1.数字直接入队列2.运算符要与栈顶元素比较 ①栈为空直接入栈 ②运算符优先级大于栈顶元素优先级则直接入栈 (这里一定注意是优先级大于才可入栈,你可以在网上看到各种抄袭版本,都是大于等于,错都很一致,误

2021-05-31 23:43:28 1301 2

转载 Shell脚本学习1——运行、变量、字符串、数组

学习过windows脚本后,继续学习一下shell脚本的相关内容运行首先运行Shell脚本有两种方法1.将其作为可执行程序保存代码为.sh文件,并进入到文件所在目录chmod +x ./test.sh #使其具备执行权限./test.sh #执行这里要注意的是,通常情况下./必不可少,因为并为将其配置在PATH中,使用./就是告诉系统文件在当前目录中2.作为解释器参数/bin/sh test.sh直接运行相关解释器,文件名作为参数变量定义变量:定义变量时,变量名与等号之间不能有

2021-05-30 11:41:48 147

转载 windows10脚本常用命令2

21 tree显示目录结构tree d: #显示D盘的文件目录结构22 &顺序执行多条命令,而不管命令是否执行成功23 &&顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令find "ok" c:test.txt && echo 成功如果找到了"ok"字样,就显示"成功",找不到就不显示24 ||顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令find "ok" c:test.txt || echo 不成功如果找不到"o

2021-05-27 11:45:24 414

原创 win10.bat脚本实现使用ffmpeg批量将图片合成视频

本文记录一下过程中涉及到的知识点与最终方法bat文件开头@echo off作用@echo off批处理文件中常会在开头看到这句命令,首先echo命令叫做“回显”,功能是将这条命令后的内容显示到控制台1.@作用是关闭紧跟其后的一条命令的回显2.echo off作用是关闭其他所有命令(不包括本身这条命令)的回显3.@echo off表示执行了这条命令后关闭所有命令(包含有本条命令)的回显bat文件末尾pause作用pausepause作用是使程序暂停,这是在最后会使得程序停在“请按任意键继

2021-05-26 16:11:28 1887

转载 windows10脚本常用命令1

1 echo@ #关闭单行回显echo off #从下一行开始关闭回显@echo off #从本行开始关闭回显。一般批处理第一行都是这个echo on #从下一行开始打开回显echo #显示当前是 echo off 状态还是 echo on 状态echo. #输出一个”回车换行”,空白行2 errorlevel查看是否执行正确,正确为0,错误为1,常用于命令运行结束echo %errorlevel%3 dir查看文件夹内容dir #显示当前目录中的文件和子目录dir /a

2021-05-26 10:10:31 315

原创 按照目标追踪txt文件对原图进行画框标记

第一步 读取所有txt文件名txtlist = []for home, dirs,files in os.walk(txtpath): for filename in files: if os.path.splitext(filename)[0][-1] == '1': txtlist.append(os.path.join(home,filename))此时要注意,python读取并不是按照顺序读取,想要正确画框需要对文件排序txtlist.so

2021-05-21 16:42:03 1332

原创 map与unordered_map的区别以及map的排序

map与unordered_map区别map头文件 #include<map>内部基于红黑树实现红黑树红黑树是一种自平衡的二叉查找树性质:1.每个节点要么是黑色,要么是红色2.根节点黑色3.每个叶子节点是黑色4.每个红色节点是黑色5.任意一节点到每个叶子节点的路径都包含数量相同的黑节点自平衡:1.左旋:以某个结点作为支点(旋转结点),其右子结点变为旋转结点的父结点,右子结点的左子结点变为旋转结点的右子结点,左子结点保持不变。如图3。2.右旋:以某个结点作为支点(旋转结

2021-05-20 11:13:46 430

转载 office365安装后仍显示之前版本

Microsoft 提供的onedrive服务很好的保护了Word、EXCEL等文件内容,防止因为文件丢失或损毁而造成的巨大损失,但是基础空间很少,想要扩容就需要每年续费购买office 365服务,但是卸载旧版本,安装新版本后却发现打开word仍显示旧版本,此时可按照如下步骤进行处理。1.打开powershell方法主要有两种:1)在系统搜索框内搜索powershell2)同时按住win+R,输入powershell2.进入office安装目录如果安装的是(x86)的Office 365,输入

2021-05-16 19:14:37 6513 1

转载 每日linux——其他命令2

wc命令wc是Word Count的缩写,统计指定文件中的字节数、字数、行数,并将统计结果显示输出。wc [选项]文件...参数功能-c 统计字节数。-l 统计行数。-m 统计字符数。这个标志不能与 -c 标志一起使用。-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。-L 打印最长行的长度。-help 显示帮助信息–version 显示版本信息ps命令ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进

2021-05-14 10:41:53 53

转载 每日linux——其他命令1

ln命令ln [参数][源文件或目录][目标文件或目录]Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。两点注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生

2021-05-13 11:51:13 76

转载 每日linux——网络命令2

netstat命令netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]从整体上看,netstat的输出结果可以分为两个部分:一个是Active Internet connections,称为有源TCP连接,其中"Recv-Q"和"Send-Q"指的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积

2021-05-12 10:58:18 85

转载 每日linux——网络命令1

ifconfig命令对照windows下的ipconfig,Linux下的ifconfig用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。ifconfig [网络设备] [参数]命令参数up 启动指定网络设备/网卡。down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。arp 设置指定网卡是否支持ARP协议。-promisc 设置是否支持网卡的promiscu

2021-05-08 14:39:05 62

转载 每日linux——性能分析2

iostat命令iostat是I/O statustucs (输入/输出统计)的缩写。iostat [参数] [时间] [次数]通过iostat方便查看CPU、网卡、tty设备、磁盘、CD-ROM 等等设备的活动情况, 负载信息。参数:-C 显示CPU使用情况-d 显示磁盘使用情况-k 以 KB 为单位显示-m 以 M 为单位显示-N 显示磁盘阵列(LVM) 信息-n 显示NFS 使用情况-p[磁盘] 显示磁盘和分区的情况-t 显示终端和CPU的信息-x 显示详细信息-V 显示

2021-05-08 11:55:37 47

转载 每日linux——性能分析1

top命令实时显示系统中各个进程的资源占用状况top [参数]显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等参数选项-b 批处理-c 显示完整的治命令-I 忽略失效过程-s 保密模式-S 累积模式-i<时间> 设置间隔时间-u<用户名> 指定用户名-p<进程号> 指定进程-n<次数> 循环显示的次数显示内容第一行,任务队列信息,同 uptime 命令的执行结果当前系统时间、系统运行时间、用户登录

2021-05-07 11:07:50 58

转载 每日linux——磁盘存储

df命令df命令用来检查linux服务器的文件系统的磁盘空间,获取磁盘被占用空间大小与剩余空间命令格式df [选项] [文件]默认情况下,磁盘空间将以 1KB 为单位进行显示选项功能-a 全部文件系统列表-h 方便阅读方式显示-H 等于“-h”,但是计算式,1K=1000,而不是1K=1024-i 显示inode信息-k 区块为1024字节-l 只显示本地文件系统-m 区块为1048576字节–no-sync 忽略 sync 命令-P 输出格式为POSIX–sync 在取得磁

2021-05-07 09:56:53 74

转载 每日linux——文件权限设置

chmod命令chmod用于改变linux系统文件或目录的访问权限,控制文件或目录的访问权限。可以使用包含字母和操作符表达式的文字设定法,或是包含数字的数字设定法。认识文件权限文件或目录的访问权限分为只读、只写和可执行三种。每一文件或目录的访问权限都有三组,每组用三位表示1.文件属主的读、写和执行权限;2.与属主同组的用户的读、写和执行权限;3.系统中其他用户的读、写和执行权限。-rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log第一列共

2021-05-06 10:59:19 895

原创 C++实现同或 && 详解bitset

基础问题在C++的位运算中,实现与使用&,实现或使用|,实现异或使用^,实现取反使用~,那么如何实现同或呢?探索过程首先,按照运算法则~(a^b) 尝试 unsigned int a,b,c; a=0B1010; b=0B0000; c=~(a^b); cout<<a<<endl; cout<<b<<endl; cout<<c<<endl; return 0;但

2021-05-06 09:57:10 6204 2

转载 每日linux——文件打包上传和下载

SecureCRT使用SSH管理linux服务器需要远程与本地之间交互文件,可以使用secureCRT自带的上传与下载功能传输协议:ASCII: 这是最快的传输协议,但只能传送文本文件。Xmodem: 这种古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。Ymodem: 这是Xmodem的改良版,使用了1024位区段传送,速度比Xmodem要快Zmodem: Zmodem采用了串流式(streaming)传输方式,传输速度较快,而且还具有自动改变区段大小和断点

2021-05-05 18:41:57 434

转载 每日linux——文件类型与扩展

文件类型与扩展一 文件类型Linux中包含有普通文件、目录文件、字符设备文件和块设备文件、符号链接文件等普通文件使用ls -lh查看文件属性时,会出现-rwxrwxrwx,其中第一个符号为-,表示该文件为普通文件。其中,又可以进一步细分为纯文本文档(ASCII)、二进制文档(binary)、数据格式文件(data)目录文件查看为drwxr-xr-x的文件就是目录,第一个字符为d。字符设备或块设备文件第一个字符是c,表示字符设备文件,比如猫、键盘、鼠标等串口设备第一个字符是b,表

2021-05-05 16:55:10 76

转载 每日linux——Linux目录结构

Linux目录结构在FHS(Filesystem Hierarchy Standard )定义下,文件系统的交互形态如下所示可分享的不可分享的不变的/usr(软件放置处)/etc(配置文件)/opt(第三方协力软件)/boot(开机和核心档)可变动的/var/mail(使用者邮件信箱)/var/run(程序相关)/var/spool/news(新闻组)/var/lock(程序相关)在Linux系统中,我们见到的都是树形结构;比如操作系统安装在

2021-05-04 16:42:50 57

原创 每日linux——文件查找(which/whereis/locate/find)

which命令查看可执行文件的位置。用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。which 可执行文件名称 -n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。-p  与-n参数相同,但此处的包括了文件的路径。-w  指定输出时栏位的宽度。-V  显示版本信息注意像cd这种bash 内建的命令! 但是 which 默认是找 PATH 内所规范的目录,所以当然找不到的whereis命令查看文件的位置。whereis命令只能用

2021-04-30 16:07:23 131 1

原创 每日linux——head/tail命令

head命令head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。head [参数]... [文件]... -q 隐藏文件名-v 显示文件名-c<字节> 显示字节数-n<行数> 显示的行数tail命令tail用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。tail [必要参数] [选择参数] [文件] -f 循环读取-q 不显示处理信息-v 显示详细的处理信息-c<数目>

2021-04-30 15:16:54 68 2

转载 每日linux——less命令

less命令less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。less [参数] 文件 -b <缓冲区大小> 设置缓冲区的大小-e 当文件显示结束后,自动离开-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件-g 只标志最后搜索的关键词-i 忽略搜索时的大小写-m 显示类似more命令的百分比-N 显示每行的行号-o <文件名> 将les

2021-04-30 15:13:01 97 1

原创 每日linux——more命令

moremore命令是翻页版的cat命令,按空格键就会下一页显示,按b键就会往回一页显示使用格式more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 选项功能-num 一次显示的行数-d 提示使用者,在画面下方显示 [Press space to continue, ‘q’ to quit.] ,如果使用者按错键,则会显示 [Press ‘h’ for instructions.] 而不是 ‘哔’ 声-l 取消遇见特殊字元

2021-04-30 15:10:17 933 1

原创 每日linux——nl命令

nl命令nl,全拼是Number of Lines,将指定文件添加行号标注后写到标准输出使用格式nl [选项] [文件]选项功能-b使用指定样式编号文件的正文行目-d使用指定的cc 分割逻辑页数-f使用指定样式编号文件的页脚行目-h使用指定样式标号文件的页眉行目-i设置每一行遍历后的自动递增值-l设置数值为多少的若干空行被视作一行-p逻辑页数切换时不将行号值复位-s可能的话在行号后添加字符串-v每个逻辑页上的第一行的行号-w为行号使用指定的栏数a 对所有行

2021-04-30 14:54:52 430 1

原创 LC序列化操作涉及函数

一、字符串与数字的来回转换1. int 转 string在头文件<string> 下定义2. string 转 int在头文件<string> 下定义二、通过getline()对输入完成切分C++中 cin.getline()可读取一行输入,允许读取包含空格的字符串。会一直读取到最大指定的字符数,或按下回车键cin.getline(sentence, 20);同时要注意,getline函数一 定义在<istream>中,是istream类的成

2021-04-30 12:28:02 113

原创 每日linux——cat命令

Cat命令cat 是concatenate的缩写,用于查看文件内容使用格式cat [选项] 文件主要功能有1.一次显示整个文件cat filename2.从键盘创建一个文件cat > filename3.将几个文件合并成一个文件cat file1 file2 > file4.将一个文件的输出复制到另一个文件cat file1 > file25.将文件内容排序输出cat file1 | sort选项功能-A等价于-vET-b对非空输出行编号

2021-04-29 17:30:47 88

空空如也

空空如也

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

TA关注的人

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