其实这道题好像大部分人都直接用Tries倒序来解,但我觉得AC自动机可能更高效一点(毕竟是在Tries基础上优化的算法如果还不如原始Tries似乎说不过去)。 根据定义写了个原始的在堆上创建树形结构的solution但好像性能并不是很乐观。另外一些用AC解的dalao好像是用一条线性结构存储所有结点 ...
分类:
其他好文 时间:
2019-06-09 14:32:44
阅读次数:
88
1.饿汉模式: 因为饿汉模式在调用类的时候就new对象,这样浪费空间,所以考虑这种情况,有了懒汉模式 2.懒汉模式: 在多线程的情况下,饿汉模式的判断对象是否为空语句会出现冲突,所以,再添加了是否线程安全的考虑 3.懒汉模式,考虑线程安全: 在方法前面加了一个synchronized这样的关键字,给 ...
分类:
编程语言 时间:
2019-05-26 21:16:35
阅读次数:
149
单例模式有饿汉模式和懒汉模式两种实现。 1.饿汉模式 饿汉模式下,在类加载的时候,就创建了实例。 特点是加载类时比较慢,但运行获取对象的速度比较快。并且是线性安全的。 2.懒汉模式 懒汉模式下,类加载时没创建实例,到了第一次获取实例的时候才创建。 特点是加载类时比较快,但运行时获取对象的速度比较慢, ...
分类:
其他好文 时间:
2019-05-23 00:05:17
阅读次数:
122
1.用双引号创建 2.用new String方式创建 3.双引号相加创建 4.两个new String相加时 5.双引号加new String创建或者new String加双引号创建 总结: 1.只在常量池上创建常量 2.只在堆上创建对象(指的是AA) String a2 = new String( ...
分类:
其他好文 时间:
2019-05-13 22:55:12
阅读次数:
148
单例模式指在系统中有且仅有一个对象实例,比如Spring的Scope默认就是采用singleton。单例模式的特征是:1、确保不能通过外部实例化(确保私有构造方法)2、只能通过静态方法实例化 懒汉模式——只有需要才创建实例 懒汉模式需要注意到多线程问题 饿汉模式——初始化类时就创建实例 附录 zh. ...
分类:
其他好文 时间:
2019-05-13 12:38:37
阅读次数:
143
package cn.gzsxt.design;//饿汉式:直接加载类,对象就已经存在了public class SingleTonEH { //单例模式:一个类只有一个实例 private static SingleTonEH instance = new SingleTonEH(); //私有化 ...
分类:
其他好文 时间:
2019-05-09 22:14:20
阅读次数:
142
//单例饿汉模式 //优点:饿汉模式天生是线程安全的,使用时没有延迟。 //缺点:启动时即创建实例,启动慢,有可能造成资源浪费。 public class SingleTonEH { //定义对象实例并私有化 private static SingleTonEH instanceEh = new S... ...
分类:
编程语言 时间:
2019-05-09 20:26:04
阅读次数:
168
懒汉模式实现单例 懒汉模式实现单例加同步模块 懒汉模式正确写法 饿汉模式 枚举模式,最安全,推荐使用 ...
分类:
其他好文 时间:
2019-05-04 21:18:02
阅读次数:
143
包装类 我们知道,Java中包含了8种基本数据类型: 整数类型:byte、short、int、long 字符类型:char 浮点类型:float、double 布尔类型:boolean 这8种基本数据类型的变量不需要使用 来创建,它们不会在堆上创建,而是直接在栈内存中存储,因此会比使用对象更加高效。 ...
分类:
其他好文 时间:
2019-05-02 12:03:34
阅读次数:
113
关于单例模式,话不多说,即程序运行时无论New了多少次,即内存中只有一个实例对象。即对象的HasHCode一致。 单例模式的两大类 1、饿汉模式(即加载时就创建对象) -1、直接实例化饿汉模式 -2、静态代码块饿汉模式(即需要加载初始化配置的时候适用) -3、枚举方式 2、懒汉式(延迟加载) -1、 ...
分类:
其他好文 时间:
2019-04-22 00:47:02
阅读次数:
159