加载中
HttpClient 同步和异步工具类

依赖项 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.9</version> </dependency> <dependency> ......

2022/04/28 17:30
172
2.抽象工厂模式

[TOC] 1. 简单定义 工厂模式又称工厂方法模式,是一种创建型设计模式,其在父类提供了一种创建对象的方法,允许子类决定实例化对象的类型。 抽象工厂,意味着工厂的泛化,也就是说对多个工厂...

2021/08/24 20:06
30
1. 工厂模式

[TOC] 1. 创建者模式之工厂方法模式 1. 简单定义 工厂模式又称工厂方法模式,是一种创建型设计模式,其在父类提供了一种创建对象的方法,允许子类决定实例化对象的类型。 主要意图就是定义一...

2021/08/21 17:35
15
设计模式总览

[TOC] 1. 设计模式职责 1 单一职责原则 定义:规定一个类只有一个发生变化的原因,如果需求开发中,一个功能不是一次性的,随着业务的发展不断的变化而变化,那么当一个类超过两个以上的职责...

2021/08/21 15:48
19
Caffeine和CompleteFuture实际应用总结

[TOC] 一.Caffeine 原理 1.1 常见缓存淘汰算法 FIFO:先进先出,在这种淘汰算法中,先进入缓存的会先被淘汰,会导致命中率很低。 LRU:最近最少使用算法,每次访问数据都会将其放在我们的队尾...

2021/08/04 16:59
95
111. 二叉树的最小深度

题目描述 解题思路 这个题目是典型的BFS算法应用的题目,我们需要采用层级遍历对树进行遍历,当层级遍历的过程中发现某个节点的左右子节点军为空的时候,则表示当前路径便是最短路径。 解题代...

2021/01/11 20:28
487
子集,组合,全排列

思路分析 回溯算法思路模板: result = [] def backtrack(路径, 选择列表): if 满足结束条件: result.add(路径) return for 选择 in 选择列表: 做选择 backtrack(路径,......

2020/12/28 20:04
32
51. N 皇后- 回溯算法

题目描述 回溯算法经典思路 寻找路径。 根据路径,每个节点做出选择,继续向下寻找。 撤销选择。 算法框架 result = [] def backtrack(路径, 选择列表): if 满足结束条件: result.add(路径)...

2020/12/28 15:57
55
26. 删除排序数组中的重复项

题目描述 解题思路 对于这种去重的题目,可以把所有元素都放到一个Set集合中去,然后获取这个Set集合的长度,就已经能满足题意,但是这样开辟多余的不必要的空间,效率不高。 对于数组,我们...

2020/12/28 10:53
83
316. 去除重复字母

题目描述 题目思路 对于数组去重,首先想到的应该是借助Java中的Set集合进行去重,然而由于Set集合是无序的,题目又要求需要保持结果的字典序,因此无法满足要求。 因此我们可以借助栈来进行...

2020/12/28 10:24
66
380. 常数时间插入、删除和获取随机元素

题目描述 解题思路 我们具有两个平均插入时间为O(1) 的选择,哈希表和数组。 虽然哈希表提供常数时间的插入和删除,但是实现 getRandom 时会出现问题。哈希表中没有索引,因此要获得真正的随...

2020/12/26 20:44
58
76. 最小覆盖子串

题目描述 解题思路 用i,j表示滑动窗口的左边界和右边界,通过改变i,j来扩展和收缩滑动窗口,可以想象成一个窗口在字符串上游走,当这个窗口包含的元素满足条件,即包含字符串T的所有元素,记...

2020/12/26 19:31
56

没有更多内容

加载失败,请刷新页面

返回顶部
顶部