
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
一次编译,到处运行,底层就是 JVM(Java Virtual Machine,Java 虚拟机)。我们写的.java源码编译成.class字节码,JVM 加载字节码,解释 / 编译执行。JVM 屏蔽了操作系统底层差异。内存模型(运行时数据区):重点搞懂虚拟机栈、堆GC 垃圾回收:什么时候回收、回收什么对象、用什么收集器回收重要区分:JVM 内存 ≠ 操作系统内存;GC 只回收堆内存中的对象,栈不
Linux 是后端服务部署、服务器运维的主流操作系统,熟练掌握高频 Linux 命令,是后端开发、运维工程师必备基础技能。很多新手在操作服务器时,经常卡在日志查看、端口排查、进程定位、文件权限处理等场景。本文整理日常工作最高频的 Linux 命令,按业务场景分类,附带参数说明与实战示例,适合快速查阅,可作为运维随身命令手册。rm -rf高危,执行前先用 pwd 确认当前目录,防止误删根目录数据;k
不依赖电脑 CPU、内存等硬件性能,抛弃 “实际运行毫秒数”;以代码执行次数为衡量标准,描述算法执行耗时随数据量n增长的变化趋势。
时间复杂度:拆分层数log n,每层合并总遍历元素 n,稳定O(n log n);空间复杂度:需要辅助临时数组,O(n);特性:稳定排序,适合外排序(海量磁盘数据排序)。
左闭右开,效率 O (logn),是有序数组独有优势。普通线性查找 search () O (n),无序数组只能用这个。底层数组长度固定,容量填满时新建 1.5 倍容量数组,复制旧数据完成扩容。

1. 所有系统性能优化的底层逻辑:抹平CPU、内存、磁盘的速度层级差异,通过缓存、预取、异步等方式减少低速IO阻塞;单机架构 → 软硬件分离+负载均衡 → 数据库读写分离+分库分表 → 缓存+CDN加速 → 分布式微服务 → 容器化编排;3. 分布式核心能力:通过解耦、异步、分层、扩容四大手段,实现系统高并发、高可用、高可扩展性。
优点:平均时间复杂度 O (nlogn),实际排序效率极高,是工业最常用排序缺点:最坏 O (n²)(有序数组选首元素做基准);递归深度大时会栈溢出// 底层存储数组,初始容量10// 实际存储元素个数/*** 添加元素,自动扩容* @param value 待添加数字*/// 判断数组是否存满// 扩容为原长度1.5倍// 拷贝旧数组数据到新数组i++) {// 底层数组指向扩容后的新数组arr
很多同学在学习Java和算法时,往往只会机械刷题、背诵语法,对底层逻辑、代码优化细节、竞赛技巧和职业发展认知模糊。本次深度学习会议,从Java基础核心语法算法竞赛实战技能算法进阶与职业规划三个维度,系统梳理了编程核心知识点,纠正常见编码误区,同时给出可落地的刷题规划和职业成长路径。本次学习完整覆盖了Java基础避坑要点、算法竞赛实战技巧、高阶解题思维、职业成长路径四大核心内容:1. 夯实Java基
分页查询 total 为 0:忘记配置分页插件;LambdaWrapper 报字段不存在:实体字段和数据库映射错误,检查;逻辑删除不生效:yml 未配置 logic-delete 相关参数,实体缺少;乐观锁更新失效:未添加乐观锁插件、更新时没有携带 version 字段;SQL 驼峰转换失效:yml 关闭了;Mapper 注入报错:启动类缺少注解或包路径写错。引入 MP 依赖,配置数据库与 MP
1、Java数组底层是连续定长内存空间,具备O(1)随机访问、长度不可变、自动赋默认值三大核心特性,数组属于特殊引用对象;2、数组创建分静态、动态、声明式三种,遍历需区分场景:改数据用普通for循环,只读遍历用for-each;3、二分查找核心是区间收敛与边界处理,优先使用闭区间写法,简单稳妥、零漏查、无死循环。







