浮名浮利,虚苦劳神。叹隙中驹,石中火,梦中身。——苏轼《行香子·述怀》

ubuntu 环境配置记录

更换源 阿里源 sudo bash -c "cat << EOF > /etc/apt/sources.list && apt update deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse deb-...

阅读更多

arthas 工具学习记录

使用springboot 创建一个会出现 内存溢出的接口 @RestController public class JvmThreadController { List<byte[]> memoryList = new ArrayList<>(); @GetMapping("/memoryTest") public String memoryTest(int c) { byte[] b = new byte[c * 1024 * 1024]; memoryList.add(b); return "success"; } } 出现的异常报错: java.lang.OutOf...

阅读更多

java 使用指针可以解答的算法 学习记录

a 字符串被包含在 b 字符串中 示例 1: 输入:s = "abc", t = "ahbgdc" 输出:true 示例 2: 输入:s = "axc", t = "ahbgdc" 输出:false @Test public void test() { String s = "abc", t = "ahbgdc"; int sPoint = 0,tPoint = 0; while (sPoint < s.length() && tPoint<t.length()) { if (s.charAt(sPoint) == t.charAt(tPoint)){ sPoint++; ...

阅读更多

面试知识点总结

HashMap HashMap数据结构图 这张图囊括了HashMap中最基础的几个点: Java中HashMap的实现的基础数据结构是数组,每一对key->value的键值对组成Entity类以双向链表的形式存放到这个数组中 元素在数组中的位置由key.hashCode()的值决定,如果两个key的哈希值相等,即发生了哈希碰撞,则这两个key对应的Entity将以链表的形式存放在数组中 调用HashMap.get()的时候会首先计算key的值,继而在数组中找到key对应的位置,然后遍历该位置上的链表找相应的值。 当然这张图中没有体现出来的有两点: 为了提升整个HashMap的读取效率,当HashMa...

阅读更多

java 使用指针可以解答的算法 学习记录

常见双指针题解 两个大数相加 两个大整数相加的功能,其中大整数以字符串的形式表示。说明: 定义了两个大整数字符串 a 和 b,以及一个 StringBuilder 用于存储相加的结果。 al 和 bl 分别表示字符串 a 和 b 的最高位的索引,初始化为字符串长度减1。 c 用于记录进位,初始化为0。 使用 while 循环,循环条件是 al 大于等于0、bl 大于等于0 或者存在进位 c。 在每次循环中,从字符串 a 和 b 的当前位置获取对应的数字,并将它们与进位 c 相加,得到 t。 将 t 对10取模,得到当前位的结果,并将其插入到 StringBuilder 的最前面。 将 t 除以10,得到进位 c。 分别将 al 和 bl 减1,以...

阅读更多