自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 cmake与make的区别及CMakeLists.txt文件编写

一、cmake与make的区别make工具是一个自动化编译工具,它会根据Makefile中的规则进行批处理编译。当需要编译的文件较多时,使用make工具会大大提高效率。但是,当项目较大时,编写Makefile也成为了一件复杂的事,因此就出现了cmake工具,cmake工具会根据CMakeLists.txt生成Makefile。流程如下:二、CMakeLists.txt文件编写CMakeLists.txt文件的编写主要包括以下7个步骤:#1. 指定cmake版本cmake_minimum_re

2021-03-17 18:11:44 985

原创 Ubuntu18.04下CLion配置googletest测试环境

1.将googletest文件夹放置在项目中,如下图所示。(我这里是将googletest文件夹放在了自己创建的external目录下,当然你也可以直接放在项目的根目录下)2.修改CMakeLists.txt文件,如下图所示。add_subdirectory:添加项目中的子目录include_directories:添加头文件所在的目录target_link_libraries:添加静态链接库(第一个参数是项目名称)3.点击测试用例旁的运行按钮,可以进行单个测试用例的测试。 点击主函数旁边的运

2021-03-17 18:08:01 748

原创 Leetcode214--最短回文串题解(KMP算法和Manacher算法)

原题链接:https://leetcode-cn.com/problems/shortest-palindrome/很显然的,这道题可以转化为求最长前缀回文子串的问题。得到该子串后,只需要将字符串s的剩余部分翻转并拼接到s的最前面即可得最短回文串。接下来我们尝试用两种方法来解决这个问题。方法1:KMP算法设s中的最长前缀回文子串为s1,将s进行翻转得到s’,则s1’为s’的最长后缀回文子串。由回文串的性质可知s1 = s1’。将s作为模式串,s’作为目标串进行匹配。当遍历到s’的末尾时,如果匹配到

2020-11-11 10:15:48 246

原创 Manacher算法常数时间内求任意子串是否回文

先上代码void Manacher(string s, int Len[], int len){ char tmp[2*len+4]; tmp[0] = '@'; for(int i = 1; i <= 2*len; i += 2) { tmp[i] = '#'; tmp[i+1] = s[i/2]; } tmp[2*len+1] = '#'; tmp[2*len+2] = '$'; int mx =

2020-11-11 10:10:41 116

空空如也

空空如也

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

TA关注的人

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