图文了解KMP
KMP用于解决串匹配问题
图解KMP
KMP代码Go语言实现1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253func kmp(s1 string, s2 string) int { // 生成next数组 // next 数组下标的含义为包括当前下标的字符串前缀长度 // 也为模式串对应下标元素的下一个字符的下标 next := getNext(s2) j := 0 // i遍历文本串, j遍历模式串 for i := 0; i < len(s1); i++ { // j > 0 防止死循环 因为前缀表[0] = 0 // 若j != 0且不匹配 j跳到前缀的后一个元素下标进行匹配即next[j-1] // 直到匹配成功或到达模式串头 即j = 0 for j > 0 && s1[i] != s2[j] { ...
TyPora+Gitee+Picgo舒适写笔记
Gitee仓库
登录 Gitee 官网,点击新建仓库
输入仓库名称,选择公开(坑),点击创建
示例如下图
进入gitee个人设置创建私人令牌
权限只选择图中两个即可
安装配置PicGo 是一款开源的用于快速上传图片并获取图片URL链接的工具
说明文档
下载链接
安装完成后打开主界面进行插件配置
如果在左边「图床设置」下面没有看到Gitee选项,那么需要你自己安装插件
在左「插件设置」选项中,搜索Gitee即可出现对应的插件,点击安装即可
安装成功后边可以看到对应图床设置了,打开「Gitee图床」配置一些仓库信息和 token
填写说明
owner:仓库持有者,填写你 Gitee用户名即可;
repo: 仓库名称,填写你在创建图床时的仓库名字,这里注意带上你的用户名哈,比如我的是devstone/ImageBed;
path: 填写仓库下面某个文件夹名字,也就是你存放图片的位置,比如我的是在images,这个名字要和你仓库中创建的对应哈;
token: 这个比较重要,就是上面创建仓库后创建的私人令牌明文,直接粘贴上去就行,如果忘记了那么直接删除重新再创 ...
Hexo + Typora + 开发Hexo插件 解决图片路径不一致
参考并简化于https://moeci.com/posts/hexo-typora/
1. 配置 Typora 图片路径
图片文件保存路径: ./${filename} 即保存到与 当前正在编辑的文件名 相同的同级文件夹下
下面三项依次为
对本地位置的图片应用上述规则
对网络位置的图片应用上述规则
优先使用相对路径
建议都勾选上,至少要勾选上第一项
PS:使用 Ctrl+V 粘贴 即可复制图片到Typora图片文件夹
2. 配置 Hexo 图片文件夹在 Hexo 根目录打开配置文件 _config.yml
搜索 post_asset_folder,false 改为 true
这样修改后,每次 ‘hexo new page’ 生成新文章,都会在文章文件同级目录创建一个与文章文件名同名的文件夹,我们就在这里存放此文章的图片。
PS: 这被称为 文章资源文件夹, 参考官方文档: https://hexo.io/zh-cn/docs/asset-folders
3. 安装 Hexo 转换图片路径 插件1npm install https://github. ...
Redis
一、Nosql概述为什么使用Nosql
1、单机Mysql时代
90年代,一个网站的访问量一般不会太大,单个数据库完全够用。随着用户增多,网站出现以下问题
数据量增加到一定程度,单机数据库就放不下了
数据的索引(B+ Tree),一个机器内存也存放不下
访问量变大后(读写混合),一台服务器承受不住。
4、如今最近的年代
如今信息量井喷式增长,各种各样的数据出现(用户定位数据,图片数据等),大数据的背景下关系型数据库(RDBMS)无法满足大量数据要求。Nosql数据库就能轻松解决这些问题。
目前一个基本的互联网项目
为什么要用NoSQL ?
用户的个人信息,社交网络,地理位置。用户自己产生的数据,用户日志等等爆发式增长!这时候我们就需要使用NoSQL数据库的,Nosql可以很好的处理以上的情况!
什么是NosqlNoSQL = Not Only SQL(不仅仅是SQL)
Not Only Structured Query Language
关系型数据库:列+行,同一个表下数据的结构是一样的。
非关系型数据库:数据存储没有固定的格式,并且可以进行横向扩展。
NoSQL泛指非 ...



