随笔分类 - Templates
摘要:复制数据的快速方法std::copy C++复制数据各种方法大家都会,很多时候我们都会用到std::copy这个STL函数,这个效率确实很不错,比我们一个一个元素复制或者用迭代器复制都来的要快很多。 比如,我写了一段下面的代码,复制100000000数据量,std::copy的性能要比前两个性能要好
        阅读全文
                
摘要:BM算法研究了很久了,说实话BM算法的资料还是比较少的,之前找了个资料看了,还是觉得有点生涩难懂,找了篇更好的和算法更好的,总算是把BM算法搞懂了。 1977年,Robert S.Boyer和J Strother Moore提出了另一种在O(n)时间复杂度内,完成字符串匹配的算法,这个算法在单模匹配
        阅读全文
                
摘要:KMP算法是由Knuth,Morris,Pratt共同提出的算法,专门用来解决模式串的匹配,无论目标序列和模式串是什么样子的,都可以在线性时间内完成,而且也不会发生退化,是一个非常优秀的算法,时间复杂度的上界是O(n+m)。 那么我们现在就来研究一下KMP算法究竟是个什么东西,我这里就尽量说的简洁一
        阅读全文
                
摘要:我发现每次我做二分题目的时候,自己写的upper_bound和lower_bound老是会出错。 而且对于普通的整数二分的时候lb和rb不好控制 虽然有时候可以直接用模板的STL,但是感觉对于某些问题还是不是很方便(主要是对于模板struct不是很支持) 我直接模仿stl写了两个自己用的模板,以后就
        阅读全文
                
摘要:原理:就是在归并排序上改进,以时间复杂度换空间复杂度,利用元素反转完成排序具体过程如下:具体操作看代码吧,应该没什么难度,主要是reverse要反转三次 1 typedef int Position; 2 3 void Merge_Sort(Position, Position, int *con...
        阅读全文
                
摘要:qsort 用 法: void qsort(void *base, int nelem, int width, int (*fcmp)(const void *,const void *)); 各参数:1 待排序数组首地址 2 数组中待排序元素数量 3 各元素的占用空间大小 4 指向函数的指针 in
        阅读全文
                
                    
                
浙公网安备 33010602011771号