
算法
bytxl
归零。
得意之时谨记,一半命运还掌握在上帝手里;失意之时须知,一半命运还掌握在自己手里。
不怕死,不找死。
展开
-
LRU算法
http://blog.youkuaiyun.com/Ackarlix/article/details/1759793http://www.cnblogs.com/changweihua/archive/2012/05/13/2497903.html文章一什么是LRU算法? LRU是Least Recently Used的缩写,即最近最少使用页面置换算法,是为虚拟页式存储管理服务的。关转载 2013-01-05 11:05:26 · 1065 阅读 · 0 评论 -
字符串匹配算法(三)
注:本文大致翻译自EXACT STRING MATCHING ALGORITHMS,去掉一些废话,增加一些解释。本文的算法一律输出全部的匹配位置。模式串在代码中用x[m]来表示,文本用y[n]来,而所有字符串都构造自一个有限集的字母表Σ,其大小为σ。四、可以滑动多远记得在穷举法中,每一趟比较后,无论成与不成,都将模式向右滑动一个位置,然后继续比较。有没有办法能利用之前的比较结果,使原创 2014-12-18 08:37:40 · 880 阅读 · 0 评论 -
从头到尾彻底理解KMP(2014年8月22日版)
作者:July时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进。1. 引言 本KMP原文最初写于2年多前的2011年12月,因当时初次接触KMP,思路混乱导致写也写得混乱。所以一直想找机会重新写下KMP,但苦于一直以来对KMP的理解始终不够,故才迟迟没有修改本文。 然近期因在北京开了个算转载 2015-01-05 08:58:33 · 675 阅读 · 0 评论 -
字符串匹配算法(一)
注:本文大致翻译自EXACT STRING MATCHING ALGORITHMS,去掉一些废话,增加一些解释。一、简介文本信息可以说是迄今为止最主要的一种信息交换手段,而作为文本处理中的一个重要领域——字符串匹配,就是我们今天要说的话题。(原文还特意提及文本数据数量每18个月翻一番,以此论证算法必须要是高效的。不过我注意到摩尔定律也是18个月翻番,这正说明数据的增长是紧紧跟随处理速度原创 2014-11-22 16:47:31 · 2242 阅读 · 0 评论 -
字符串匹配算法(二)
三、位运算的魔法——KR与SO位运算经常能做出一些不可思议的事情来,例如不用临时变量要交换两个数该怎么做呢?一个没接触过这类问题的人打死他也想不出来。如果拿围棋来做比喻,那么位运算可以喻为编程中的“手筋”。 按位的存储方式能提供最大的存储空间利用率,而随着空间被压缩的同时,由于CPU硬件的直接支持,速度竟然神奇般的提升了。举个例子,普通的数组要实现移位操作,那是O(n)的时间复杂度,而原创 2014-12-08 08:47:40 · 712 阅读 · 0 评论 -
二叉查找树,红黑树,AVL树,B~/B+树(B-tree),伸展树——优缺点及比较
http://blog.youkuaiyun.com/klarclm/article/details/7780319原创 2014-11-08 14:52:09 · 8821 阅读 · 2 评论 -
为Linux应用构造有限状态机
http://www.ibm.com/developerworks/cn/linux/l-fsmachine/index.html转载 2014-11-24 09:07:16 · 805 阅读 · 0 评论 -
Shell Sort 希尔排序
http://blog.youkuaiyun.com/crcr/article/details/5944245转载 2014-10-17 09:10:24 · 762 阅读 · 0 评论 -
cbc,cfb,ecb,ofb
cbc,cfb,ecb,ofb等并不是新的加密算法,而是对加密算法的应用模式。ECB:Electronic Code Book,电子密码本模式,最基本的加密模式,也就是通常理解的加密,相同的明文将永远加密成相同的密文,无初始向量,容易受到密码本重放攻击,一般情况下很少用。CBC:Cipher Block Chaining,密码分组链接,明文被加密前要与前面的密文进行转载 2014-10-15 09:06:18 · 2917 阅读 · 0 评论 -
替换OpenSSL Engine加密之替换EVP_CIPHER结构
http://www.cnblogs.com/crunchyou/archive/2013/01/19/2867735.html原创 2014-09-26 10:33:42 · 3739 阅读 · 0 评论 -
归并排序——C++实现
简单的归并排序代码:#include "stdio.h" // 归并算法需要一个临时数据template int mergesort( Elem list[], Elem tmplist[], int i_start, int i_end ){ // 递归 结束条件 if ( i_end == i_start ) return 0;原创 2014-06-12 09:06:49 · 843 阅读 · 0 评论 -
快速排序——C++实现
C++程序实现:原创 2014-06-10 09:00:04 · 843 阅读 · 0 评论 -
shell排序(C++实例)
在看《数据结构与算法分析》,刚看了shell排序,自己写了个简单的程序实现这个算法,原理这里不多讲了:#include "stdio.h"templateint inssort2( Elem list[], int n, int incre ){ int i, j; Elem elem_tmp; for ( i = incre; i < n; i += incr原创 2014-03-17 09:14:21 · 1509 阅读 · 0 评论 -
HashMap实现原理分析
http://blog.youkuaiyun.com/vking_wang/article/details/141665931. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链转载 2014-03-19 11:39:27 · 620 阅读 · 0 评论 -
HashMap面试题
http://www.importnew.com/7099.htmlHashMap的工作原理是近年来常见的Java面试题。几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道Hashtable和HashMap之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中高级面试中。投资银行更喜欢问这个问题,甚至会要求你实现HashMa转载 2014-03-20 08:35:27 · 1004 阅读 · 0 评论 -
字符串匹配算法总结
http://blog.youkuaiyun.com/WINCOL/article/details/4795369KMP虽然经典,但是理解起来极其复杂,好不容易理解好了,便起码来巨麻烦!老子就是今天图书馆在写了几个小时才勉强写了一个有bug的、效率不高的KMP,特别是计算next数组的部分。其实,比KMP算法速度快的算法大把大把,而且理解起来更简单,为何非要抓住KMP呢?笔试出现字符串模式匹配转载 2014-03-20 08:13:59 · 871 阅读 · 0 评论 -
在OpenSSL源码中添加自定义加密算法
参考:http://blog.youkuaiyun.com/force_eagle/article/details/7948561.加密算法的加载在调用加密算法之前,通过调用OpenSSL_add_all_algorithms来加载加密算法函数和单向散列算法函数void OpenSSL_add_all_algorithms(void){ OpenSSL_add_all_原创 2014-10-16 10:49:34 · 5196 阅读 · 0 评论