- 博客(3)
- 问答 (1)
- 收藏
- 关注
原创 【设计模式】学习笔记--单例模式(饿汉式、懒汉式、双重检查、静态内部类)
(披萨订购,由工厂类决定输出)优点:简单,在类装载前完成实例化,避免了线程同步问题(因为静态变量在程序开始运行时就会执行,并且只执行一次)缺点:效率低,每个线程都要实例化,同时存在线程安全问题(因为再给线程赋值之前可能有另一个也会进入赋值步骤)将实例化对象的代码提取出来,放到一个类中维护,达到和主项目的依赖关系解耦,从而提高项目的 扩展性与维护性。缺点:违反设计模式的ocp原则,即对扩展开发,对修改关闭,如果需要新增功能,会修改代码。定义:定义了一个创建对象的抽象方法,有子类据欸的那个要实例化的类。
2023-09-10 17:05:51
46
原创 数据结构——哈希表【Java代码】
fff假设f(m为哈希表表长,MOD为取余)有关键字5 与 9,m 长为4,f(5) = f(9) = 1,他们会分配到同一位置,但是不同的关键字的位置应该不同,因此就产生了哈希冲突。
2023-08-22 19:52:15
61
1
原创 数据结构学习笔记——二叉树(1)【Java代码】
树是一种非线性的数据结构。树是n(n ≥ 0) 个结点的有限集。在一棵非空树中:(1)有且仅有一个称为根的结点(2)当n > 1时,其余结点可以分为m (m > 0) 个互不相交的有限集,其中每一个有限集又是一棵树,并且称为根的子树。二叉树是一个抽象的数据类型,每个节点至多只有两棵子树,并且子树有左右之分,其次序不能颠倒。
2023-08-21 19:02:25
74
2
力扣(Leecode) 540. 有序数组中的单一元素
2022-02-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人