- 博客(10)
- 收藏
- 关注
原创 求最长回文子串(Manacher)算法
package test;//Manacher算法,马拉车算法求最长回文子串//算法基本要点:首先用一个非常巧妙的方式,将所有可能的奇数/偶数长度的回文子串都转换成了奇数长度://在每个字符的两边都插入一个特殊的符号。比如 abba 变成 #a#b#b#a#, aba变成 #a#b#a#。 //为了进一步减少编码的复杂度,可以在字符串的开始加入另一个特殊字符,这样就不用特殊处理越界问题,...
2018-03-30 10:35:29 139
原创 Array sum is K - DP
求出一个数组arr中有没有那几个数加起来等于S,有,返回true 没有返回false。分析:eg:arr={2,4,6,3} S=10;动态规划可以这么理解:1、很多个重叠子问题 2、选或者不选的问题对于数组中的每一个数,比如例子中的3,如果选择,则需要3之前的数可以组成S-3=7按下标i表示: 如果选:f(i,S)=f(i-1,S-arr[i]); ...
2018-03-29 14:21:51 170
原创 String-intern()
运行时常量池是方法区的一部分,Class文件中除了类的版本、字段、方法、接口,还有一项就是常量池,他在运行期被JVM装载,并且可以扩充。String的intern()就是扩充常量的一个方法。当一个String的实例string调用intern()方法时,java查找常量池中是否有相同Unicode的字符串常量,如果有,则返回其引用,没有则在常量池中增加一个Unicode等于string的字符串并返...
2018-03-28 08:55:32 226
原创 Get/Post
Http的请求格式如下。<request line> 主要包含三个信息:1、请求的类型(GET或POST),2、要访问的资源(如\res\img\a.jif),3、Http版本(http/1.1)<header> 用来说明服务器要使用的附加信息<blank line> 这是Http的规...
2018-03-23 14:34:04 438
原创 线程安全
线程安全概念:当多个线程访问某一个类(对象或方法)时,这个类始终能表现出正确的行为,那么这个类(对象或方法)就是线程安全的。机制:1、synchronized:可以在任意对象及方法上加锁,而加锁的这段代码称为“互斥区”或“临界区”。出现异常会释放锁。 关键字Synchronized拥有锁重入的功能,也就是在使用Synchronized的时候,当一个线程得到一个对象的锁后,在该锁里执行代
2018-03-13 10:01:16 107
原创 HashMap、HashTable、ConcurrentHashMap
区别:(1) HashMap 线程不安全(2)HashTable 线程安全 (所有的方法都加了sychronized实现)(3)concurrentHashMap 线程安全(使用ReenTrantLock(可重入锁) 锁分离技术,分段锁技术实现)HashMap可以允许插入null key和null value,null key的情况,调用putForNullKey方法,置于数组0的...
2018-03-12 20:39:00 309
原创 线程
并行:多个cpu实例或者多台机器同时执行一段处理逻辑,是真正的同时。(一台电脑运行两个QQ,则两个QQ之间是并行的)并发:通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面不是真正的同时。并发往往在场景中有公用的资源,那么针对这个公用的资源往往产生瓶颈,我们会用TPS或者QPS来反应这个系统的处理能力。(一个QQ的多个聊天)(事务处理系统:Transaction processing...
2018-03-07 10:57:38 135
原创 Mysql事务
所谓的事务就是保证以上的多个步骤在同一个环境中执行,只要其中一个失败,事务就会撤销之前的操作,回滚到之前的状态,如果都执行成功,那么事务就认为成功了。这就是事务的作用。对事务有了初步理解后,进一步了解事务的官方概念,事务是DBMS的执行单位。它由有限个数据库操作语句组成。但不是任意的数据库操作序列都能成为事务。一般来说,事务是必须满足4个条件(ACID)原子性(Autmic):一个原子事务要么完整执
2018-03-07 09:52:30 332
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人