算法

KMP算法与前缀函数实例讲解

KMP算法与前缀函数实例讲解KMP算法与前缀函数(一)前缀函数一个字符串s的border是一个最长的字符串,且既是s的后缀,又是s的真前缀。给定长为n的字符串s,其前缀函数定义为一个长为n的数组π。其中π[i]为s的……

字典树(trie)/前缀树(Prefix Tree)实例讲解

字典树(trie)/前缀树(Prefix Tree)实例讲解对于字典树/前缀树可能大部分情况很难直观或者有接触的体验,尤其是对前缀这个玩意没啥概念,可能做题遇到前缀问题也是使用暴力匹配蒙混过关,如果字符串比较少使用哈希表等结构可能也能蒙混过关,但如果字符串比较……

字符串匹配实例讲解

字符串匹配实例讲解本篇主要讲字符串匹配以及字符串算法中三个主要算法的一些内容,帮助大家理解。一、基本概念字符串匹配问题假设文本是一个长度为n的数组T[1…n],而模式是一个长度为m的数组P[1&helli……

C++标准库中的字符串

C++标准库中的字符串一、C++字符串C++提供了以下两种类型的字符串表示形式:(1)C风格字符串(2)C++引入的string类类型二、C风格字符串C风格的字符串起源于C语言,并在C++中继续得到支持。字符串实际上是使用……

C语言标准库中的字符串

C语言标准库中的字符串一、字符串操作<string.h>size_tstrlen(charconst*s);注意:返回值类型size_t是无符号类型,和int进行运算或比较时需要注意;char*……

字符串基础知识

字符串基础知识一、什么是字符串?字符串就是多个只读字符组成的数组。为什么说是只读?只读是因为字符串的所有方法都不会改变原字符串,包括通过下标修改,字符串依旧是保持原样。var str=&q……

离散化算法实例讲解

离散化算法实例讲解说到离散化,可能很多人不知道这是什么,小编简单给大家介绍一下,后面会详细说明,离散化是程序设计中一个常用的技巧,它可以有效的降低时间复杂度。其基本思想就是在众多可能的情况中,只考虑需要用的值。离散化可……

什么是数学?

什么是数学?一、什么是数学?数学是研究数量、结构、变化以及空间模型等概念的一门科学。二、数学的特点数学区别于其他学科的明显特点有三个:1.抽象性,2.精确性,3.应用的极端广泛性。三、数学的三个传统领域:1.研究……

什么是计算几何?

什么是计算几何?一、计算几何的引入计算几何是几何学的一个重要分支,也是计算机科学的一个分支,研究解决几何问题的算法。在现代工程与数学、计算机图形学、机器人学、VLSI设计、计算机辅助设计等学科领域中,计算几何都有重要……

DP优化(三)四边形不等式优化实例讲解

DP优化(三)四边形不等式优化实例讲解有一种DP可以写成四边形不等式,那么可以用一个优化来优化这种DP(一般是二维的,不加优化是O(n3))。如果a≤b≤c≤d,那么如果DP式子满足f(a,c)+f(b,d)≤f(……