自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 前缀和

用于本人复习的前缀和文章 前缀和 一维数组的应用 对于一个数组nums,我们设定一个前缀和数组p_m。p_m数组中的元素含义为p[i] = nums[0]+nums[1]+…nums[i]. 一般更新方式为p[i] = p[i-1]+nums[i] 在刷题过程中往往会遇到一类问题,暴力做法可能需要枚举一个整体的所有子可能;例如一个字符串的所有字串。根据具体需要,可能前缀和将会起到帮助作用,降低时间复杂度。 假如nums = [1,2,3,-2,5,-7,-5,10],我们需要求得他连续子数组的最大和。

2020-05-20 14:43:03 303

原创 快速幂

用于自己复习的快速幂算法 快速幂简介 一般所用快速幂有求数字a的b次方,还有矩阵快速幂:a矩阵的b次方。 原理简介:假设我们要求8的10次方,如果正常采用O(n)算法,每次循环乘以8。我们总共需要10次运算。 但是,一个数的幂次可以写成加法的形式。ak=ab∗aca^k = a^b*a^cak=ab∗ac,当k=b+c时。 我们把10用二进制表示为1010。810 = 88 ∗*∗ 82.观察其幂次分别为8=238 = 2^38=23,也就是1000;2=212 = 2^12=21,也就是10。我们

2020-05-13 23:11:43 208

原创 KMP算法

本文用于自己观看回忆KMP算法 KMP算法简介 1.可在一个主文本字符串S内查找一个词W的出现位置。 2.其流程大致分为两步,第一为构造next数组。第二部分利用next数组来实现模式串w与S的匹配,找到字符串S中w第一次出现的位置(索引)。 Next数组 首先Next数组元素定义为,该字符之前的字符串中具有相同前缀后缀的长度为多少。例: 给定S串“DABCDABDE”,设他的next数组 P,P数组所存的值应该依次为[-1,0,0,0,0,1,2,3,1]。 其中,E对应的next 值为1(即字符E之

2020-05-13 16:13:54 144

空空如也

空空如也

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

TA关注的人

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