- 博客(14)
- 资源 (1)
- 收藏
- 关注
原创 AC自动机
算法来源于贝尔实验室AC自动机首先ac自动机不是自动accept机器的意思自上一篇以来,我们知道了KMP算法。暂时还没有问题。直到有一天,突然又发现出来了个问题:我要在主串里面搜索多个模式串,这可怎么办啊?额,那就对于每一个模式串都跑一遍KMP呗那么灵魂拷问一下:时间复杂度?啊哈哈哈哈哈哈哈哈哈哈嗝假如有m个模式串,主串长度为n,那么时间复杂度:O(n×m)O(n\times m)O(n×m)(是不是似曾相识?对,就跟一个主串搜索一个模式串的蛮力算法的速度一个样)又来了,这么慢,,再见
2021-02-08 18:49:50
189
原创 c++字符串匹配之kmp
算法转载于:Knuth,Morris and Pratt写在前面:字符串匹配是要在主串里找模式串字符串匹配啊,在kmp之前,你会先想到什么?蛮力啊!!(一听就是超时の典型)很好,复杂度呢?O(n×m)O(n\times m)O(n×m)。不用说滴。燃鹅如果是随机的数据。它也会接近线性。假设范围是ascii和扩展,那么每一次匹配的第一次比较只有1256\frac{1}{256}2561的概率通过。。。燃鹅大部分情景不是随机的啊!!哈哈!蛮力算法再见吧!!<(  ̄^ ̄)(θ(θ☆( &g
2020-06-04 17:37:56
397
原创 python之逆元(数论倒数)
倒数想必大家都知道吧a的倒数是b,那么a×b=1a\times b=1a×b=1。那数论倒数呢?数论基本就是取模同余,应该也能猜到了吧在模p意义下,a的逆元是b,有a×b≡1(mod p)a\times b\equiv 1(mod\space p)a×b≡1(mod p)也就是a×ba\times ba×b可以是1,也可以是1+p,也可以是1+2p……注意:只有gcd(a,p)=1时才有解,也就是a和p互质。那么逆元怎么求呢?第一种:费马得意地笑着( •̀ ω •́ )✧
2020-06-03 16:54:53
2648
2
原创 python之(扩展)欧几里得
扩展欧几里得就是欧几里得的扩展,先说说欧几里得算法吧def gcd(a,b): if b == 0: return a else: return gcd(b,a%b)这段代码想必大家在熟悉不过了吧,,但是有没有想过为什么gcd(a,b)=gcd(b,a%b)?gcd(a,b)=gcd(a%b+(a//b)*b,b),先把a拆成两部分设a和b的最大公约数是res那么肯定a是res的倍数,b也是res的倍数(否则res怎么能称得上公约数?)那么(a//
2020-06-01 16:09:00
4642
原创 n皇后最快算法详解
n皇后问题再经典不过了,想必大家也听说过。再简单说一下吧,就是一个n*n的棋盘,放置n个皇后,使得竖着不攻击,横着不攻击,斜着不攻击。求有多少种方法。(国际象棋不是这么玩的呀 )向来网上都是经典的题目配经典的解法,用一个矩阵记录哪里放了,回溯一下,每一次遍历每一个皇后,判断会不会被攻击。。。然而,比蜗牛????还慢!!数据大一丁点,宇宙毁灭了都算不完,可见得有多慢啊!!复杂度为:O(nn)你说可怕不可怕刚刚算一个19皇后,就算神威·太湖之光也得算个差不多7个月,太可怕了!!(⊙o⊙)能不能
2020-05-28 16:28:30
3431
1
原创 c++红黑树(小白慎入)
这一次我改用c++了,因为我嫌弃java没有指针。。。写在前面,网上有红黑树插入删除可视化模拟器,可以插入删除规定范围内的数,可以感受感受,尤其是删除https://sandbox.runjs.cn/show/2nngvn8w对于这个网址,亲测无效,不知道你读这篇文章的时候有没有效。链接:https://pan.baidu.com/s/1_c7juIdNxjBPBSqHDPT7uA提取码:4jcn这个是我自己上传的,也是从网上找到的,如果有差池,那可能是我上传的出错了。亲测有效。
2020-05-09 16:29:57
915
原创 python凸包问题
凸包问题什么是凸包?举个栗子吧有很多钉子,钉在木板上。拿根猴皮筋,拉的足够大。一松开,“啪”一声,现在的猴皮筋就是凸包凸包是什么或者说,让这根猴皮筋尽量小,同时能把所有的钉子包含在内。怎么求呢?先插一段:凸包属于计算几何,计算几何很大程度上基于一个东西,叫做叉积。而且主要用的是判断是在左边还是在右边,叉积>0在左,=0在中,<0在右。...
2020-04-01 08:57:44
2369
原创 java哈夫曼编码
哈夫曼编码有些童鞋有个大误区:哈夫曼编码其实不是一个统一的编码,只不过是编码设计算法而已啦!先说说编码电脑手机平板笔记本。。。这一类都是由进制(二)通讯的。就算所谓的基因计算机什么的,也是进制啊,只不过是4进制而已我们要传信,需要一边通过一个函数编码,传到另一边,再解码。我也无奈啊计算机只认识0和1,别的都不认识QwQ唵嘛嘛嘛嘛呢呢叭咪吽Huffman:0001010101011110...
2020-03-06 16:55:42
1197
1
原创 c++之差分数组&最近公共祖先&树上差分
树上差分自己不算难(难的是天天爱跑步 )先说差分数组。这个玩意,就是差分数组里的每一个值等于原数组这个位置的值减去原数组这个位置前面的值,但差分数组第一个值等于原数组第一个值。估计童鞋们看不懂(◎﹏◎)为此,我特意准备了栗子<( ̄︶ ̄)↗[GO!]原数组a: 9 3 5 2 7差分数组b:9 -6 2 -3 5所以除了第一个特例,b[i]=a[i]-a[i-1]...
2019-09-14 09:20:17
634
原创 Unity3D Psoftbody 软体 附带Psoftbody包
软体,和https://blog.youkuaiyun.com/weixin_42421684/article/details/89790834这篇文章的三样,合起来在Unity是至关重要。布经常用来做窗帘,液体就是各种水、血等,绳子就是绳子。软体在这里也是很重要的,它可以做沙发、肉、布丁等等等。Psoftbody包:...
2019-05-05 16:20:31
2580
原创 Unity3D Obi 绳子挂着布 附带绳子+布+液体三合一
三合一链接:http://www.manew.com/thread-142502-1-1.html蛮牛币不足请到贴吧灌水。。。要想让他们弄在一起,直接用Pin是远远不够的,因为他有一个很大的需求:ObiCollider那加了Collider又怎样呢?会出很多问题,我不敢试。。。那么我就得使用“高分子小球”(胶)。我这里就做一个小球,有兴趣的可以做一堆小球。我就是这样,先在绳子和布交接...
2019-05-03 20:28:58
1757
1
原创 Unity根据变换摧毁物体
void DestroyTransform(Transform transform) { object[] gameObjects; gameObjects = GameObject.FindSceneObjectsOfType(typeof(GameObject));//获取所有场景物体 foreach (GameObject go in ...
2019-04-06 15:17:22
686
2
原创 OpenCvSharp&AForge之长曝光
OpenCvSharp&AForge之长曝光我以前一直搜怎么用这两样做长曝光,结果百度上没有。有一次突然想起来了谷歌,拿谷歌真的搜到了一些。虽然我的是C#,他的是Python,那也没关系,可以参考一下嘛。链接:https://www.pyimagesearch.com/2017/08/14/long-exposure-with-opencv-and-python/英文看不懂...
2019-03-29 15:06:30
1278
原创 #undef_Cplusplus
顾名思义,def是define的缩写。#define是定义常量(宏),也就是到结束的时候才不见,且不能更改。示例:#include <iostream>//包含头文件using namespace std;//命名空间std#define P 3.141592653589793238626//定义常量(宏)int main(){ //P=3.14//ERROR:P...
2018-08-06 14:30:01
391
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人