- 博客(14)
- 收藏
- 关注
原创 01背包、完全背包、多重背包、分组背包问题,一文读懂
背包问题是一种组合优化的 NP 完全问题:有 N 个物品和容量为 W 的背包,每个物品都有自己的体积 w 和价值 v,求拿哪些物品可以使得背包所装下物品的总价值最大。0-1背包有N件物品和一个最多能背重量为W 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。每件物品都有选与不选两种情况,那么这个问题完全可以用回溯法来暴力搜索,时间复杂度为O(n2)O(n^2)O(n2),因为暴力解法时间复杂度太高,所以才要用
2022-04-12 15:14:32
3007
原创 如何理解KMP算法
KMP算法是对字符串暴力匹配算法的改进,要理解KMP算法,首先需要了解字符串的暴力匹配算法。暴力匹配算法假设有主串“abcabcabcabf”和模式串"abcabf",我们需要逐个比较主串s和模式串p的字符,如果模式串的每个字符都能和主串的某个子串匹配上,则查找成功从i=0,j=0开始,逐个比较s[i]和p[j],当i=5并且j=5时,出现s[i] != s[j] 的情况这时i应该回退到i=1的位置,j回退到j=0,然后再次开始逐个比较直到最后 i = 11, j = 5时匹配结束.
2021-09-13 16:52:49
392
原创 解决Qt卸载重新安装后VS2019上Qt插件失效的问题
目录问题解决1. 卸载插件2. 删除注册表3. 删除缓存文件4. 重新安装插件测试在VS2019上配置好Qt以后,由于一些问题重新安装了Qt5.13.2(版本不重要),然后再打开vs发现Qt的插件失效了,重装插件和Qt都不管用,原因是Qt差价的第一次配置信息还存在电脑上,重装Qt软件以后,差价的配置文件和新装的这个有bug,最终通过问题解决1. 卸载插件在扩展里点击卸载 ,然后关闭vs,点击modify2. 删除注册表start + r 输入regedi.
2021-09-10 20:54:37
4208
3
原创 关于C++类和对象访问权限的一点思考,类的成员函数访问同类型的对象的私有变量
在学习拷贝构造函数和重载=号实现深拷贝的时候,发现我们可以在待拷贝对象调用成员函数时,在此成员函数的内部可以直接使用参数对象的私有变量,Class MyNum{public: MyNum(int m, int n) { m_Num1 = m; m_Num2 = n; } MyNum(const MyNum & mn) { //直接访问mn的私有变量 this->m_Num1 =
2021-09-09 15:03:53
487
原创 Windows中Git安装教程
1. 下载文件进入官网点击 Download for Windows 会自动开启下载如果没有自动下载,可以自行选择下载的版本,一般我们下载64位的就可以2.安装打开下载后的文件,点击next选择自己喜欢的安装位置(c盘够大的话默认就行),我习惯把所有开发环境相关的放入一个文件夹然后下图的默认即可是否在开始菜单创建文件夹,next即可选择Git默认的文本编辑器,next设置仓库的名字,next设置环境变量第一种只能在Gi...
2021-07-28 22:35:37
182
原创 解决IDEA中生成foreach块自动换行问题
使用foreach,默认生成的块是这样的,非常难看,所以更改一下设置apply一下,然后在使用foreach,自动生成的代码块就很漂亮了!!!
2021-07-25 16:58:34
1547
原创 MySQL5.7安装教程,免安装版本
学习数据库一般会用到MySQL软件,一般来说自学安装5.x就够用了,本文将带大家实现MySQL5.7解压缩版的安装。解压缩版安装卸载十分方便,推荐大家使用下载链接下载后得到一个压缩包,先将它解压到自己习惯的位置,我这里直接放到D盘根目录打开解压后的文件夹如图:然后在该目录下新建 my.ini 文件(新建txt文件,然后修改后缀为 ini 即可)点击是建立文件后复制下面的代码,并将安装目录设置为你自己的[Client]#设置3306端口port = 3306
2021-04-08 16:50:31
2059
原创 eclipse安装教程2020版(解决官网下载的安装包打开无响应的问题)
目录1.下载链接2.安装教程2.1 第一种方法,使用安装包2.1.1下载安装包2.1.2 安装2.2 免安装方法最近在学习做Java项目的时候,使用到了Eclipse,下面是安装教程两种方法:1.直接下载安装包2.下载压缩包,解压后即可使用(推荐)1.下载链接Eclipse下载链接2.安装教程2.1 第一种方法,使用安装包2.1.1下载安装包一般情况下,我们直接点击download即可下载成功(建议更换国内镜像源,下载速度更快,如下图所
2021-02-28 23:48:57
21188
14
原创 Python函数简介
文章目录1. 函数的定义2. 函数的调用3. 函数文档4. 函数的参数4.1 位置参数4.2 默认参数4.3 可变参数4.4 关键字参数4.5 命名关键字参数4.6 函数参数表的顺序5. 函数的返回值6. Lambda 表达式(匿名函数)6.1 定义6.2 应用1. 函数的定义函数以def开头 然后是函数名,圆括号里是参数表,然后:后表示函数的具体代码Python以缩进代表代码块,因此函数体要缩进return语句结束函数,并返回值。可以没有return语句,表示无返回值def function
2021-02-19 12:55:34
470
1
原创 Python列表的深复制与浅复制
一、深复制与浅复制列表是Python中自带的一种数据结构,在使用列表时,拷贝操作不可避免,下面简单讨论一下列表的深复制(拷贝)与浅复制首先看代码:l1 = [5, 4, 3, 2, 1]# 用两种方法实现对列表l1的拷贝l2 = l1l3 = l1[:]print(l1) # [5, 4, 3, 2, 1]print(l2) # [5, 4, 3, 2, 1]print(l3) # [5, 4, 3, 2, 1]#修改l1l1[0] = 9print(l1) # [9, 4,
2021-02-10 22:10:48
1315
1
原创 阿里天池【入门】Docker练习场 满分操作
1. 任务描述本题目主要是为了练习docker的基本操作, 题目描述如下:2. 开始干活首先分析一下要准备的东西:docker环境 镜像仓库 需要pull的镜像文件 Dockerfile 程序代码(py文件) run.sh 2.1 搭建docker环境下面开始准备,本文使用的docker环境搭建在centos 7服务器上,其他操作系统命令可能有所不同搭建docker环境可以参考官方链接2.2 创建阿里云容器镜像仓库申请阿里云容器镜像服务(免费),并...
2021-01-28 16:17:57
776
4
原创 python3 安装 pybloom
直接pip会报错那么寻找其他的办法[在github下载pybloom文件](在github下载pybloom文件)在命令行打开下载后的文件夹执行以下命令python setup.py install等待结束即可...在pycharm输入import pybloom发现红色波浪线已经消除,安装成功...
2021-01-14 17:47:54
468
原创 VSCode:搭建C++环境时,第一次调试过程中 preLaunchTask“g++” 已终止,退出代码为1的解决方案
在网上找了很多解决方案,把task.json 和 lanch.json 文件都修改了也无济于事,最终自己发现了问题所在,其实解决的办法很简单,在按照官方教程配置C++环境的时候,前面有一步是配置task.json,然后 ctrl + shift + b 会编译cpp文件生成一个exe。要解决调试出错,把刚才生成的exe删了(调试时会再生成一个)即可。注意:按照官方教程一步一步的做即可,只要把相应的文件路径改为自己的就行,感觉官方教程简洁明了,比一些博客容易理解的多。贴下官方链接:https://co
2021-01-10 22:21:12
5126
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人