摘要:
首先看看kmp的出现原因:暴力匹配算法 假设现在我们面临这样一个问题:有一个文本串S,和一个模式串P,现在要查找P在S中的位置,怎么查找呢? 如果用暴力匹配的思路,并假设现在文本串S匹配到 i 位置,模式串P匹配到 j 位置,则有: 如果当前字符匹配成功(即S[i] == P[j]),则i++,j+ 阅读全文
摘要:
思考一下如何取得这几个数 显然,用0,1判断是最快的 没有值都是0,只有有值得才是1,要【判断是否这个数在这个数组里面就直接用if(50)=1即可知道了,够简单吧】,在这100个New 出来的数组空间中,显然这种方式不需要什么二分也不需要快速查找了, 但是有一个很重要缺点就是如果是一亿大小的话,这根 阅读全文
摘要:
首先搞懂Docker是什么 ,那我们接下来看一张图了解一下 这就是我们部署项目的一般流程,多个就是横向扩展读个linux上,确保用户量上去也不会崩。但是经常遇到的额问题就是 1服务器与项目环境不一致比如jdk版本tomcat版本或者什么其他问题之类 2升级迭代麻烦 3如果这一台linux还有其他项目 阅读全文
摘要:
#排序与查找 查找算法:顺序查找、二分查找、哈希表查找、二叉排序树查找。 排序算法:插入排序、冒泡排序、归并排序、快速排序等。 排序 1.1冒泡排序: 冒泡排序是最简单的排序之一了,其大体思想就是通过与相邻元素的比较和交换来把小的数交换到最前面。这个过程类似于水泡向上升一样,因此而得名。 举个栗子, 阅读全文
摘要:
在复习到c++的时候,发现习惯了java,python直接对数据的调用或者new之后对于c++的数组运用的不太习惯,在此整理下 1.1基础概念 C++从右往左赋值 C++ 支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合 在 C++ 中要声明一个数组,需要指定元素的类型和元素的数量, 阅读全文
摘要:
磁盘是以磁头和旋转分块来存蓄内存的数据结构或者数据, 假设我们有一个员工表,放入磁盘,磁盘一个块能存蓄4个员工信息,那么,100个员工就是25块磁盘 那现在需要查找50号员工张三, 那是非常废时间的,为此我们建立了索引,并且将索引页放入磁盘的块中 这也就是树的前身,但是树的设定我们知道是左右子节点和 阅读全文