自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据结构之树——详细理解二叉堆,完全二叉树,和O(N)构造二叉堆的方法

complete binary tree 完全二叉树1) 第0层到第h - 1层是满的2) 最后一层是从左边开始排的。 as far left as possible优先队列的实现:二叉堆二叉堆二叉堆是 1)完全二叉树 2)每一个节点都有一个对应的值(key)3)如果u是一个中间节点,则u比所有它的儿子节点都小。也就是说, 2)表示树T有n个节点,3)表示u的值是以u为根的子树中的最小值。一个序列对应的二叉堆不是唯一的。但这个堆的根是这个堆的最小值。插入:O(log N)shift up 操作

2022-04-25 00:11:55 651

原创 字符串算法:Hash算法,KMP算法,最小循环节、循环周期,Manacher马拉车算法

#字符串Ⅰ输入输出方式:1.char s[]scanf()printf()gets()2.Stringcincoutsstream(可用于非高精度输出x^y)Hash:1.工程中常见的hash算法:md5 sha1 sha2562.Rabin-Karp:求出每个前缀的hash,O(1)计算出一个子串的hash值Hash[i] = (hash[i - 1]*p+s[i])%mod取模方式:p为大质数,mod为超大质数。p 超过字符集大小,奇数 13131base和mod互质

2022-03-25 22:54:34 750

原创 排列组合基本定理

排列组合A(n,m) = (n!)/(n - m)!C(n,m) = (n!)/((n - m)!* m!)基本定理:C(n,0)* C(n,1)*…*C(n,n) = 2 ^ nC(n,r) + C(n,r + 1) = C(n + 1,r + 1)C(n,0) = 1 C(n,i) = C(n,i - 1) * (n - i + 1) / iD(1) = 0;D(n) = (n - 1) * (D(n - 1) + D(n - 2)) 错排基本模型:Ⅰ隔板法x1 + x2 + …

2022-03-25 22:49:51 631 1

原创 我的题解(17年)

我的题解2017.9又重新开始学DSAA了,偶然翻到自己17年写的题解,五年过去了,现在的DSAA课还没当年做的题难,以此来对以往的oi生涯留个纪念吧1.洛谷1531线段树模板:区间最值2.洛谷 2068线段树模板:单点更新,区间求和3.codevs 4919线段树:区间更新,区间查询(余数)给你N个数,有两种操作1:给区间[a,b]内的所有数都增加X2:询问区间[a,b]能被7整除的个数第一问直接上模板,第二问用一个数组x[]来记录除7余数的个数:如x[1]表示区间内除7余1 的数

2022-03-25 22:48:33 2804

原创 python 报错TypeError: ‘in <string>‘ requires string as left operand, not int

python 报错TypeError: 'in ’ requires string as left operand, not int原因:类型没对齐username = ‘root’tn.write(username + str(’\n’))就会报错应该改成tn.write(username.encode(‘ascii’) + str(’\n’))python3 中 文本字符串类型(unicode编码)被命名为str,字节字符串类型被命名为bytes,其中 str encode

2022-03-25 22:35:17 15491

原创 VScode 安装python 和 jupyter notebook

VScode 安装python要安装插件和解释器,插件在VScode里面装,解释器在官网下载,然后启动解释器(activate 有一个python interpreter seletion)装插件的同时会自动装上 jupyter notebook用pip安装需要的包pip install numpy...

2022-03-25 22:31:59 1687

原创 python 可视化 Data Vistualization

Data Vistualizationlibraries to plot:matplotlib (plt)pandas .plot()seaborn (sns)bar plotrug plots(easy to see distributions)histograms= bar + (areas represent proportions)​ default: show counts on y-axis.​ ‘density = True’ : the total areas sums

2022-03-25 20:35:39 1573

原创 python 更换列名

dataframe 更换列名# 更换列名,同时显示出来df.rename(columns={'a':'A'}, inplace=Ture)# 更换列名,不显示出来 inplace = False(默认)# 求取每一列(或某一列)的中位数,众数,均值,方差等df.groupby('key').aggregate(['min', np.median, max])# 把True/False写成1/0# 法1import numpy as npa = np.array([True, False

2022-03-25 19:56:54 14080 1

原创 [错误] ubuntu 网络问题 && ubuntu 16.04 + eigen3 安装(解决 fatal error: Eigen/Core: No such file or directory)

网络问题sudo systemctl restart NetworkManager.servicesudo systemctl stop NetworkManager.servicesudo systemctl start NetworkManager.serviceubuntu 16.04 + eigen3 安装(解决 fatal error: Eigen/Core: No such file or directory)sudo apt-get install libeigen3-dev

2021-01-14 09:24:48 106

原创 Object Detection 目标检测 学习笔记

Object DetectionObject DetectionFour steps for Computer Vision Tasks :Classification , Classification + Localization , Object Detection , Instance Segmentationone-stagetwo-stagebbox : Bounding box 包含物体的最小矩形 ( x , y , w , h )​ x , y 默认为左上角,可自定义​

2021-01-14 09:20:10 135

原创 learning github [ github 学习 ]

GitHubcreate a repositorycreate a branchmake and commit changesopen a pull request for changes to the READMEmerge your pull requestpull : from remote to localpush : from local to remoteremote : remote serverCASE: YOU ALREADY HAVE A PROJECT ON CL

2021-01-11 21:41:48 104

原创 个人装Ubuntu 的一些配置 configuration

Configuration:Install typorasudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAEwget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add -// add Typora's repositorysudo add-apt-repository 'deb https://typora.io/l

2021-01-11 21:40:39 559

原创 opencv 数字识别

数字识别ROI抽取:将目标区域从原始图像粗分离(二值化,噪声处理)识别:对目标区域的进一步分离ROI 抽取位深度:每个像素占用的位(bit)24位颜色可称之为真彩色,位深度是24,它能组合成2的24次幂种颜色,即:16777216种颜色 ( 或称千万种颜色 ),超过了人眼能够分辨的颜色数量。当我们用24位来记录颜色时,实际上是以2^(8×3),即红、绿、蓝 ( RGB ) 三基色各以2的8次幂,256种颜色而存在的,三色组合就形成一千六百万种颜色。通道:任意的单色灰阶图(R 、 G 、 B

2021-01-11 21:39:02 900

原创 安装OpenCV4.4.0

安装OpenCV4.4.0Note:不需要clone下所有的东西,直接到对应的网页 https://github.com/opencv/opencv.git 中 找到需要的压缩包即可。此处是 tar.gzgit clone https://github.com/opencv/opencv.git在解压缩之后的里创建build文件夹然后cmakecmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .

2021-01-09 16:19:15 292

原创 cmake学习

cmake学习在哪里cmake,cmake出来的东西就会被放在哪里。cmakemake./mytest //运行可执行文件在project文件夹下创建src,inc在project文件夹下编写CMakeLists.txtcmake_minimum_required(VERSION 2.8)project(mytest) #test是不行的,不能使用一个cmake中的关键字,这个名字是什么,这个名字的可执行文件。 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_

2021-01-09 16:18:05 85

原创 opencv报错opencv 中 findcontours 只能用于灰度图!!!!

terminate called after throwing an instance of ‘cv::Exception’what(): OpenCV(4.4.0) /home/maria/env/opencv-4.4.0/modules/imgproc/src/contours.cpp:197: error: (-210:Unsupported format or combination of formats) [Start]FindContours supports only CV_8UC1 im

2021-01-08 23:03:16 869

原创 opencv 中HSV的颜色值对照表

【opencv】HSV颜色值对照表今天踩了深坑。opencv中的hsv值域是[ 0 , 255 ]注意:每个程序定义的HSV中h,s,v 三个值的值域可能不相同。此处仅代表opencv的。

2021-01-08 22:21:33 8563 3

原创 OPENCV 踩坑记录(imshow,hsv)

OPENCV 踩坑记录今天真的超郁闷,踩了一些一辈子都没想过的神坑。opencv 中 imshow 的图片默认是BGR 的!!!!完全没想到,还是太想当然的以为是RGB每个软件/程序 对HSV 的值域不同!!!opencv 中 hsv 的三个通道都是 [ 0 , 255 ]我是怎么想当然的认为他们的阈值都一样的!!!...

2021-01-08 21:48:24 557

原创 颜色选择器vs在线取色器

在线颜色选择器http://gavin-yyc.github.io/colorconvert/可以输入rgb/hsv/hex,转换成其他的输出在线取色器http://www.jiniannet.com/Page/allcolor可以输入一张图片,然后显示每个像素点的rgb/hsv/…颜色选择器https://htmlcolorcodes.com/zh/yanse-xuanze-qi/可以选择某个颜色(输入),然后得到它的rgb,hex等...

2021-01-08 21:14:30 757 2

原创 OpenCV 学习 入门

OpenCV 学习Rect 类 (rectangular) 一般用于存图片成员变量x、y、width、height,分别为左上角点的坐标和矩形的宽和高。常用的成员函数有:Size()返回值为一个Sizearea()返回矩形的面积contains(Point)用来判断点是否在矩形内inside(Rect)函数判断矩形是否在该矩形内tl()返回左上角点坐标 (top left)br()返回右下角点坐标 (bottom right)OpenCV——Mat,IplImage,CvMat类型转

2021-01-08 11:19:52 187

原创 ubuntu 16.04 + eigen3 安装(解决 fatal error: Eigen/Core: No such file or directory

网络问题sudo systemctl restart NetworkManager.servicesudo systemctl stop NetworkManager.servicesudo systemctl start NetworkManager.serviceubuntu 16.04 + eigen3 安装(解决 fatal error: Eigen/Core: No such file or directory)sudo apt-get install libeigen3-devsu

2021-01-08 11:13:11 151

原创 C++ relearning

C++ relearningtypedefuse typedef to give a specific type a nicknametypedef int feet;feet distance;//completely equate 'int distance;'enumIt is used to declare some constant quantities. It’s more than useful in defying some specific constants.

2021-01-08 11:00:16 158

原创 SSH ubuntu

SSH安装dpkg -l | grep ssh如果出现openssh-client 和 openssh-server 就说明已经自动安装了openssh-client和openssh-server如果没有出现,手动安装sudo apt-get install openssh-client sudo apt-get install openssh-server确认ssh-server是否启动(服务器:被远程登录的电脑)ps -e | grep ssh出现 sshd表示已经启动停止和重

2021-01-08 10:55:59 91

原创 编译错误CMakeFiles/mytest.dir/src/targetArmor.cpp.o:(.data+0x78):第一次在此定义 CMakeFiles/mytest.dir/src/R.cpp

编译错误CMakeFiles/mytest.dir/src/targetArmor.cpp.o:(.data+0x78):第一次在此定义CMakeFiles/mytest.dir/src/R.cpp.o:(.data+0x80): `kFan_area_min’被多次定义首先,编译时出现全局变量被多次定义的问题。需要加上头文件保护,并且应清楚头文件中能写些什么1.宏定义(预处理 #define)2.结构,联合和枚举声明3.typedef声明4.外部函数声明5.全局变量声明注意:申明

2021-01-08 10:54:08 1201

原创 字符串模板总结

字符串模板总结KMPint n,m;int nxt[N],f[N];char a[N],b[N];//b为文本串,a为模式串。 void Get_nxt(){ nxt[1]=0; for(int i=2,j=0;i<=n;++i){ while(j>0&&a[i]!=a[j+1]) j=nxt[j]; if(a[i]==a[j+1]) ++j;...

2019-08-23 21:36:31 115

原创 状压dp总结

状压dp总结模型枚举子集1.O(3n)O(3^n)O(3n)对于每一位,有3种状态:在原集和子集中,在原集中不在子集中,在子集中不在原集中。for(int i=S;i>=1;i=(i-1)&S)2.O(2n)O(2^n)O(2n)考虑建立两层之间的转移,注意是从大的转移到小的,还是相反。这里是用大的更新小的。st=(1<<n)-1;for(ll i...

2019-08-23 21:35:58 472

原创 线段树模板总结

线段树模板总结线段树:实际操作:1.求区间最值和最值的个数2.求区间和2.求区间第k大(值域线段树)3.求实际区间长度(涉及区间合并)#include <iostream>#include <cstdio>#include <cstring>#define lson rt << 1,l,mid#define rson rt &...

2019-08-19 12:27:49 148

原创 图论总结

图论总结1.最小生成树:在稀疏图中用kruskal,在稠密图中用prim2.涉及排名先后时,可考虑topsort3.单源最短路问题数据范围一般为1e5,如果N是1000,甚至更小,可能就要枚举某些边了。最短路1.双关键字最短路。POJ 1724 ROADS题意:N个城市,编号1到N。城市间有R条单向道路。每条道路连接两个城市,有长度和过路费两个属性。Bob只有K块钱,他...

2019-08-19 12:26:53 469

原创 图论模板总结

图论模板总结为什么图论也有那么多代码??一.最小生成树1.最小生成树prim下面的写法是O(eloge)有O(n^2)的写法:双重循环枚举每个点typedef pair<int,int> pii;priority_queue <pii,vector<pii>,greater<pii> >q;void prim(){ memset...

2019-08-19 12:18:25 304

原创 贪心,思维总结

贪心,思维总结套路:1.在具有多个要素的题中,考虑通过排序,让某些要素呈现单调性,使对其他要素的处理变得简单2.在对所有元素都要做处理时,可以从极端情况着手一.微扰法在考虑先后两个人的先后顺序时,可以考虑两种情况表示出来,作差比较排队接水n个人一起排队接水,第i个人需要b[i]的时间来接水。1 <= n <= 10000 <= b[i] <= 1000...

2019-08-19 12:17:42 699

原创 数学总结

数学总结素数,因子1.大区间素数POJ-2689 Prime Distance题意:题意:求给定区间内的质数距离最小的一对和质数距离最大的一对。(1 <= L,R <= 2.1E9, R-L <= 1e6)大区间的素数题都是这样做的。筛出不超过R\sqrt{R}R​的所有质数p,然后再去枚举[L,R]区间内p的倍数,将其打上标记,最后区间内剩下的就都是素数了。这对...

2019-08-19 12:16:58 321

原创 数学模板总结

数学模板总结好吧。不得不说数论的公式是真的多。数论一.同余a≡b(mod  c)a≡b(mod \ \ c)a≡b(mod  c)成立的充要条件是(a−b)=k∗c(a-b)=k*c(a−b)=k∗c二.GCD && LCM$gcd(a,b)=gcd(b,a%b) $证明:唯一分解定理ab=lcm(a,b)∗gcd(a,...

2019-08-19 12:16:00 189

原创 树状数组模板总结

树状数组模板总结开这篇文的目的是数据结构的代码太长,放在一篇里面就太冗杂了,所以就再开一篇记录各种模板。树状数组本质:动态维护前缀和。当然,也可以维护前缀最小,最大前缀和是最常用的,最值只适用于特定情况接口:lowbit()//lowbit(k)就是把k的二进制的高位1全部清空,只留下最低位的1和后面的0,比如10的二进制是1010,则lowbit(k) = lowbit(1010...

2019-08-19 12:15:27 330

原创 树形dp总结

树形dp总结这是我自认写得最认真最详细的一篇总结套路:1.一般设的状态是dp[u],因为阶段是由深的到浅的。2.如果设出状态,但不好转移,可以考虑从底向上的top序或者dfs序来转移;3.如果这样设不出状态,就考虑可以反向计算对答案的贡献。4.一般是O(n)的,偶尔有带log的模型:1.树的直径题意:给定一棵树,每条树边附带边权,求每个点的在这棵树上能够去到的最远距离。考虑...

2019-08-19 12:14:39 439

原创 树链剖分总结

树链剖分总结树链剖分:已知一棵包含N个结点的树,每个节点具有点权:操作1: 格式: 1 x y z 表示将树从x到y结点最短路径上所有节点的值都加上z操作2: 格式: 2 x y 表示求树从x到y结点最短路径上所有节点的值之和操作3: 格式: 3 x z 表示将以x为根节点的子树内所有节点值都加上z操作4: 格式: 4 x 表示求以x为根节点的子树内所有节点值之和(操作3,4可以用...

2019-08-19 12:12:40 105

原创 基础dp总结

基础dp总结总结POJ 1948 Triangular Pastures用给出的N个篱笆围成三角形,求三角形的最大面积可以是多少(答案乘以100后再取整数部分输出)。因为面积要最大,所以篱笆是肯定要用完的。所以用F[i][j][k]表示是否可以用前i个篱笆组成两条长度分别为j和k的边。那么另一边的长度自然就是sum-j-k。注意判断他们是否能围成三角形。状态转移方程为:F[i][j...

2019-08-19 12:11:57 313

原创 cmake学习

cmake学习笔记编译过程:1.预处理(Preprocessing)(文件格式变化:.c—.i)将所有的头文件及宏定义替换成其真正的内容,预处理之后得到的仍然是文本文件,但文件体积会大很多。2. 编译 (Compilation)(文件格式变化:.i—.s)是指将经过预处理之后的程序转换成特定汇编代码(assembly code)的过程。(不是指程序从源文件到二进制程序的全部过程)3.汇...

2019-08-13 21:39:02 195

原创 rviz的使用与显示

rviz的使用与显示界面主要分为左侧设置区域,中间的显示区域和右侧的视角设置区域。最上方是与导航相关的工具。什么是rviz:The ROS Visualization Tool ,即机器人操作系统3D可视化工具,也就是平时说的模拟器。为什么要使用rviz:你不需要用一个实际的机器人开始ROS学习。ROS包含了许多在虚拟环境中运行的机器人包,所以你可以在拥有真实世界的机器人前,在虚拟环境中...

2019-08-13 21:38:02 12346

原创 ubuntu命令

Ubuntu命令行指南____相关概念:终端是与操作系统连接的物理(直接)接口进程是当前在计算机中运行的命令或程序,它并不总是活动的,可以处于睡眠或其他状态常用命令:ls 按照首所有字母升序列出当前文件夹下的内容cd 进入其他目录echo 向屏幕输出cat 显示文件内容(反正txt可以)touch 新建一个文件mkdir 建立一个目录rm 删除一个目录重定向输入输出:重...

2019-08-13 21:37:13 111

原创 用usb摄像头定位apriltag

1.开启笔记本摄像头2.打开roscoreroscore3.打开摄像头cd sc_localization_ws/src/usb_cam/launch //到达 usb_cam-test.launch所在的文件夹roslaunch usb_cam-test.launch3.标定rosrun camera_calibration cameracalibrator.py --s...

2019-07-31 10:44:48 1516

空空如也

空空如也

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

TA关注的人

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