一、概要: KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的(先了解BF算法)。具体实现就是实现一个next()函数,函数本身包含了模式串的局部匹配信息。时间复杂度O(m+n)。 二、怎么求模式串next[n]的值: 定义: (1)next[0]= -1 意 ...
分类:
编程语言 时间:
2017-05-01 12:57:58
阅读次数:
287
二分法查找: ...
分类:
编程语言 时间:
2017-05-01 13:35:15
阅读次数:
161
一、简单 阿里巴巴内网的不可见水印用的是什么算法? 据说月饼事件截图的那位员工也被开除了? 下面的只是简单的加一个很浅的水印,实现起来很容易。 浏览器终端下粘贴下面的代码, 下面的只是简单的加一个很浅的水印,实现起来很容易。 浏览器终端下粘贴下面的代码, 这样就可以加水印了。我选择了百度的首页,好像 ...
分类:
编程语言 时间:
2017-05-01 13:35:48
阅读次数:
2241
写在前面 先后接触过很多编程语言,最喜欢的就是C和Python,相比其他语言,C 是神器,优点太多了;个人而言,C 最重要的一点就是能够让你在敲代码的时候是以一个计算机科学家的角度去思考,而不是仅仅停留在程序表面; 而Python很简单、实用;可以节省很多开发时间,Life is short, us ...
分类:
编程语言 时间:
2017-05-01 13:36:39
阅读次数:
208
融合算法: 7.65、inplace_merge //合并 ...
分类:
编程语言 时间:
2017-05-01 13:37:15
阅读次数:
341
Min/max: ...
分类:
编程语言 时间:
2017-05-01 13:37:25
阅读次数:
217
最近学习Spring时,认识到Spring异常处理的强大。之前处理工程异常,代码中最常见的就是try-catch-finally,有时一个try,多个catch,覆盖了核心业务逻辑: Spring能够较好的处理这种问题,核心如下,文章主要关注前两个: @ExceptionHandler:统一处理某一 ...
分类:
编程语言 时间:
2017-05-01 13:37:34
阅读次数:
1007
利用char数组模拟bitmap排序。bitmap能够用来对数组的查重,也可用来排序,时间复杂度较为可观。 public class BitmapSort { public static void bitmapsort(int[] num){ if(num==null) return; int ma ...
分类:
编程语言 时间:
2017-05-01 13:38:34
阅读次数:
166
回调函数 回调函数涉及的3个函数 登记回调函数 回调函数 响应回调函数 简单的解释 你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话。过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货。在这个样例里,你的电话号码就叫回调函数。你把电话留给店员就叫登记回调 ...
分类:
编程语言 时间:
2017-05-01 13:41:45
阅读次数:
249
作业: 使用正则表达式和递归实现计算器功能。 实现: 1、实现带括号的计算 2、实现指数、加减乘除求余等功能 该计算器思路:1、递归寻找表达式中只含有 数字和运算符的表达式,并计算结果2、由于整数计算会忽略小数,所有的数字都认为是浮点型操作,以此来保留小数使用技术:1、正则表达式2、递归 二、流程图 ...
分类:
编程语言 时间:
2017-05-01 13:42:32
阅读次数:
599
通过一个实例来说明Netty的使用。用1个服务器连接5个客户端线程,客户端连接上服务器以后就向服务器发送消息,服务器接收到消息后向客户端返回消息,客户端接收到消息以后,等待随机的时间,再向服务端发送消息,这样一直循环下去。 项目结构: NettyServer.java: ServerPipeline ...
分类:
编程语言 时间:
2017-05-01 13:42:42
阅读次数:
180
选择排序的算法是将数组分为无序区和有序区,每次从无序区选择一个最小的数放在有序区的最后,直到无序区中所有的数字都放入有序区,即实现了数组的排序 代码: void selectsort(a[],n) { int min; for(int i=0;i<n;i++) { min=i; for(int j= ...
分类:
编程语言 时间:
2017-05-01 14:15:34
阅读次数:
119
【BZOJ1009】[HNOI2008]GT考试 Description 阿申准备报名参加GT考试,准考证号为N位数X1X2....Xn(0<=Xi<=9),他不希望准考证号上出现不吉利的数字。他的不吉利数学A1A2...Am(0<=Ai<=9)有M位,不出现是指X1X2...Xn中没有恰好一段等于 ...
分类:
编程语言 时间:
2017-05-01 14:16:06
阅读次数:
177
以简单的转账金额为例: 1、数据库(建表、插入数据) 2、引入jar包 3、创建jdbc.properties文件(设置连接数据库参数) 4、创建Dao持久层 (1)、创建AccountDao接口 (2)创建AccountDaoImpl实现类 继承JdbcDaoSupport类,从而获取jdbc模板 ...
分类:
编程语言 时间:
2017-05-01 14:16:33
阅读次数:
230
Problem Description 相信大家都听说一个“百岛湖”的地方吧。百岛湖的居民生活在不同的小岛中。当他们想去其它的小岛时都要通过划小船来实现。如今政府决定大力发展百岛湖。发展首先要解决的问题当然是交通问题,政府决定实现百岛湖的全畅通!经过考察小组RPRush对百岛湖的情况充分了解后,决定 ...
分类:
编程语言 时间:
2017-05-01 14:16:46
阅读次数:
208
在Java项目中一些配置參数保存在Property文件里,这样能保证不改动原代码直接改动Property文件。 PropertyParser.java package com.discover.parse; import java.io.File; import java.io.FileInputS ...
分类:
编程语言 时间:
2017-05-01 14:17:36
阅读次数:
178
函数就其实可以看作是一个被定义变量 只不过变量定义在内存里面的是一些值 而函数被定义在内存里面就是一些要执行的语句的字符串 函数需要被调用的时候才会运行。 局部变量和全局变量 局部变量就是在函数体内的变量,他和全局表里最大的区别就是作用域 局部变量的作用域就是在函数体内的,而全局变量就全局作用的 ...
分类:
编程语言 时间:
2017-05-01 14:19:29
阅读次数:
135
public class TestRandom { public static void main(String[] args) { //随机数 int[] random = new int[4]; for(int i = 0; i < random.length; i++){ random[i] ...
分类:
编程语言 时间:
2017-05-01 14:19:36
阅读次数:
186
错误代码: //找到应该插入的下标index for(int i = 0; i <array.length; i++){ if(num<array[i];){ index = i; } } for(int i = index; i<array.length-1; i++){ array[i+1] = ...
分类:
编程语言 时间:
2017-05-01 14:19:43
阅读次数:
162
这个作业是包含了循环,函数,文件修改,列表,字典等等的知识点 首先需要改的文件是Haproxy的配置文件 global log 127.0.0.1 local2 daemon maxconn 256 log 127.0.0.1 local2 info defaults log global mode ...
分类:
编程语言 时间:
2017-05-01 14:20:27
阅读次数:
183