代码改变世界

最长连续公共子串、最长公共子串(可以非连续)、最长回文串(连续)、最长回文串(可以不连续)、最长递增数组的求解

2017-05-06 13:33 by fengna, 728 阅读, 0 推荐, 收藏, 编辑
摘要:问题:最长连续公共子串、最长公共子串(可以非连续)、最长回文串(连续)、最长回文串(可以不连续)、最长递增数组、长方形镶嵌最多的求解 方法:上述问题有相似性,都可以采用动态规划进行求解。 (1)最长连续公共子串: 如果A[i]==B[j], dp[i][j]=dp[i-1][j-1]+1; 否则,d 阅读全文

显示锁(ReentranLock)

2017-05-06 13:32 by fengna, 624 阅读, 0 推荐, 收藏, 编辑
摘要:1. Lock接口:定义了一组抽象的加锁操作,提供了一种无条件的、可轮询的、定时的以及可中断的锁获取操作,所有的加锁和解锁的方法都是显示的。 2. ReentrantLock锁:实现了Lock接口,并提供了与synchronized相同的互斥性和内存可见性,也提供了可重入的加锁语义。finally后 阅读全文

对象的共享

2017-05-06 12:15 by fengna, 281 阅读, 0 推荐, 收藏, 编辑
摘要:1.volidate关键字:volidate关键字可以保证多线程程序使用共享且可变的long和double等类型的变量是安全的,非volidate类型则会不安全。 Java语言提供一种稍弱的同步机制,即volidate变量,用来确保将变量的更新操作通知到其他线程。在访问volidate变量时不会执行 阅读全文

线程安全性

2017-05-06 10:28 by fengna, 172 阅读, 0 推荐, 收藏, 编辑
摘要:1.定义:当多个线程访问某个类时,不管运行环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。 2.产生线程非安全的主要原因:竞态条件的产生 竞态条件:例如,先检查后执行(延迟初始化);复合操作:例如,计 阅读全文

创建Spring工程的基本步骤

2017-05-05 15:49 by fengna, 613 阅读, 0 推荐, 收藏, 编辑
摘要:第一步:加入jar包 第二步:创建配置文件 -申明javabean 配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http 阅读全文

Struts2与Hibernate联合开发步骤

2017-05-05 15:48 by fengna, 365 阅读, 0 推荐, 收藏, 编辑
摘要:hibernate与struts2的联合开发步骤: 1. 建立web工程 2. 加入jar包,struts2、hibernate、数据库连接的包 3. 数据表和bean之间的映射,以及相应的映射文件*.hbm.xml配置 <?xml version="1.0" encoding="UTF-8"?> 阅读全文