数据结构
1. 数组 (Array)特点:连续内存,随机访问 O(1),插入/删除 O(n)。 常见操作12345678910111213141516171819202122232425262728293031323334353637383940// 遍历int[] arr = {1, 2, 3, 4, 5};for (int i = 0; i < arr.length; i++) System.out.print(arr[i] + " ");// 查找(线性查找)public static int find(int[] arr, int target) { for (int i = 0; i < arr.length; i++) { if (arr[i] == target) return i; } return -1;}// 插入(指定位置)public static int[] insert(int[] arr, int pos, int val) ...
算法
🔥 常见算法分类 + Java实现 1. 排序算法 (Sorting)1.1 冒泡排序 (Bubble Sort)1234567891011public static void bubbleSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j+1]) { int tmp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = tmp; } } }} 1.2 选择排序 (Selection Sort)123456789public static void selectionSort(int...
题单
🔹 数组(Array)1. 两数之和1234567891011public int[] twoSum(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < nums.length; i++) { int diff = target - nums[i]; if (map.containsKey(diff)) { return new int[]{map.get(diff), i}; } map.put(nums[i], i); } return new int[0];} 2. 最大子数组和(Kadane 算法)12345678public int maxSubArray(int[] nums) { int max = nums...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new "My New Post" More info: Writing Run server1$ hexo server More info: Server Generate static files1$ hexo generate More info: Generating Deploy to remote sites1$ hexo deploy More info: Deployment
分布式
1. Spring Cloud 体系核心思想Spring Cloud 并非一个全新的框架,而是一套用于构建微服务架构的规范和解决方案的集合。它巧妙地利用了 Spring Boot 的自动配置和快速开发特性,将业界经过广泛验证的优秀微服务组件(如 Netflix OSS、Alibaba Nacos、HashiCorp Consul 等)进行封装和集成,为开发者提供了一站式的分布式系统开发工具箱,涵盖了服务治理、配置管理、熔断降级、智能路由、服务调用等方方面面。 Netflix OSS 常用组件(部分进入维护模式) 服务注册与发现 (Service Discovery): Eureka 作用: 提供一个服务注册中心。每个微服务启动时,将自己的网络地址等信息“注册”到 Eureka Server。其他服务(消费者)则从 Eureka Server “发现”并拉取所需服务提供者的地址列表,从而实现服务间的动态寻址和调用。 使用: 服务端添加 spring-cloud-starter-netflix-eureka-server 依赖,并使用 @EnableEurekaServer 注解。客...
web
WebHTTP一、HTTP 协议概述HTTP(Hypertext Transfer Protocol,超文本传输协议)是应用层协议,它定义了 Web 客户端(如浏览器)和 Web 服务器之间交换数据的规则。它的核心特点是无状态(Stateless),这意味着服务器不会保存客户端的任何信息,每次请求都是独立的。 二、HTTP 请求(Request)一个完整的 HTTP 请求由四部分组成: 1. 请求行(Request Line)这是请求的第一行,它定义了请求的基本信息。 请求方法(Method):如 GET, POST, PUT, DELETE 等,表示对资源的操作类型。 请求 URL (URI):资源的地址。 HTTP 协议版本:如 HTTP/1.1, HTTP/2.0。 示例: GET /index.html HTTP/1.1 2. 请求头(Request Headers)请求头提供了关于客户端、请求体和一些其他元数据的信息。它们以键值对的形式存在。 Host:指定请求的目标服务器的域名和端口号。 User-Agent:客户端的软件类型和版本,如浏...
手写答案
1.实现单例模式 (Singleton Pattern)懒汉式:使用双重检查锁定 (DCL) 实现线程安全的懒汉式单例模式。这种模式在第一次调用时才创建实例,并且通过两次检查和同步块确保了线程安全和性能。 1234567891011121314151617181920212223242526272829class Singleton { // 1. volatile 关键字确保多线程环境下,instance 变量的修改能够立即被其他线程看到 private static volatile Singleton instance; // 2. 私有化构造器,防止外部直接 new 实例 private Singleton() {} // 3. 提供一个全局访问点,使用 DCL 确保线程安全 public static Singleton getInstance() { // 第一次检查:如果实例已经存在,直接返回,避免不必要的同步 if (instance == null) ...
