05.07 周六
1. 计算空间复杂度
https://leetcode-cn.com/leetbook/read/illustration-of-algorithm/r8ytog/
1.1) 递归调用的空间复杂度示意图
1.2) 指数阶的空间复杂度 O ( n 2 ) O(n^2) O(n2)
ps: 数学公式,使用 Latex
语法
05.08 周日
2.常用数据结构的时间复杂度
3.有效括号
方法01: 使用栈实现
方法02: 使用字符串的替换,循环处理判断即可(时间复杂度高,不建议)
4.使用栈实现队列
思路: 使用两个栈来实现,一个是 input的输入栈,一个是 output的输出栈, 栈模拟队列的数据结构,主要实现的方法有,
- ①push的入队列方法
- ②peek的 查看队列头部元素方法
- ③pop的出队列方法
具体来说的话是:push的操作都是进入到 Input的输入栈,当 调用 peek和 操作,会触发 Input的数据全部出栈到OutPut栈中。实现负负得正的队列效果
扩展: 如果是 队列实现模拟栈的效果,也可以是2个队列模拟
5.堆
6. JVM中的G1调优
- fullGC 可以通过 GC日志,或者添加fullGC前后的堆dump ,查看fullGC原因
- cpu飙升可以看看 jstack
打开GC的日志的参数
- idk 9之前是 -XX:+PrintGCStamps 或 -XX:+PrintGCDetails
- jdk9之后的参数是 -Xlog:gf*