摘要:
字符串排序算法: 键索引计数法 低位优先的字符串排序算法(Least-Significant-Digit-First, LSD) 高位优先的字符串排序算法(MSD) 三向字符串快速排序 键索引计数法 适用性:适用于小整数键的排序算法 稳定性:稳定的排序算法,排序后键相同的元素的相对位置没有变化 思路 阅读全文
摘要:
问题描述:给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 类型:排序 思路:三指针 算法实现: class Solution { public v 阅读全文
摘要:
类型:创建型设计模式 定义:一个类在全局只能有一个对象实例 实现细节: 将构造器设置成私有,禁止外部创建单例对象 提供一个获取单例对象的全局访问点 创建单例对象时要保证线程安全 单例模式解决的问题: 解决资源访问冲突(如果对象方法使用了对象级别的锁,那么单例能够保证对同一资源的顺序访问;如果同一资源 阅读全文
摘要:
类型:创建型设计模式 细分:简单工厂、工厂方法模式、抽象工厂模式 简单工厂在需要频繁增删对象类型的情况下,需要频繁地修改创建对象的静态方法,违背开闭原则。 工厂方法模式解决了简单工厂违背开闭原则的问题,在抽象类定义了要返回的抽象类型,将要返回的具体类型延迟到子类。 抽象工厂模式在工厂模式的基础上,在 阅读全文
摘要:
Docker 入门 安装 Docker Windows/Mac 用户安装 Docker Desktop 设置 华为镜像加速,在 Docker Engine 中添加: { "registry-mirrors": [ "https://xxx.mirror.swr.myhuaweicloud.com" 阅读全文
摘要:
SpringBoot 参数校验 校验框架 Bean 校验框架的事实标准:Hibernate Validator 依赖 从 SpringBoot 2.3 开始,需要显式地引入 spring-boot-starter-validation 依赖 领域模型 @Data @Builder @NoArgsCo 阅读全文
摘要:
/** * 暴力子字符串查找算法 * * 将文本字符串中的每个位置都与模式字符串进行匹配,直到找出匹配的子串位置 * */ public class BruteForce { /** * @param pattern 模式字符串 * @param text 文本字符串 * @return 找到匹配的 阅读全文
摘要:
依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> <dependency> <group 阅读全文
摘要:
全排列 计算 nums = [1, 2, 3] 的全排列。 每个排列有 3 个数位,每个数位的值可以是 [1, 2, 3],通过循环枚举每个数位的值,循环结束时,回退到上一个数位。 /** * 46.全排列 * 链接:https://leetcode.cn/problems/permutations 阅读全文
摘要:
二叉树遍历 二叉树的最大深度 /** * 题目:二叉树的最大深度 * 难度:简单 * 链接:https://leetcode.cn/problems/maximum-depth-of-binary-tree/ * * 思路:二叉树的最大深度 == max(左子树的最大深度, 右子树的最大深度) + 阅读全文