摘要:
1. JDK 5.0 起提供了线程池相关API:ExecutorService 和 ExecutorsExecutorService:真正的线程池接口。常见子类ThreadPoolExecutor.void execute(Runnable coommand):执行任务/命令,没有返回值,一般用来执 阅读全文
摘要:
四.动态规划 代码随想录内容: 1.动态规划当前状态是由前面状态推导而来的,而贪心是局部直接选最优的 存在递推关系(存在状态转移),也就是当前状态是由前面状态推导而来的。可以使用动态规划 2.动态规划的解题步骤:(dp数组,状态转移公式,初始化,遍历顺序,举例子)(动规五部曲,类似前面的递归三部曲, 阅读全文
摘要:
1.局部最优,则全局最优 2.贪心没有套路,说白了就是常识性推导加上举反例 3.先想清楚局部最优,再想清楚全局最优 4.Arrays.binarySearch(arr, begin, end, key) 前包后不包 Arrays.equals(arr1,arr2) 判断两个数组是否相等。可以判断基本 阅读全文
摘要:
1.二叉树的一些概念:深度,高度。。。 2.熟记基础代码 二叉树遍历,二叉堆(上浮,下沉,构建堆),优先级队列 后续非递归遍历比较特殊, 优先级队列的实现要会 3.二叉树 (1)满二叉树 这棵二叉树为满二叉树,也可以说深度为k,有2^k-1个节点的二叉树 (2)完全二叉树 (3)二叉查找树:二叉查找 阅读全文
摘要:
1.LinkedList可以实现stack,queue,deque 关于deque,java中有专门的接口,可以看一下。。。 2.括号匹配是使用栈解决的经典问题。由于栈结构的特殊性,非常适合做对称匹配类的题目。 3.List都有toArray()方法,Queue都有toArray方法 阅读全文
摘要:
1.replace(oldstr,newstr)和replaceAll(regex,newstr)功能一样,但前者效率更高 区别:replaceAll的第一个参数支持正则表达式 2.算法题中除了String的方法要熟悉,StringBuilder也很常用,方法也要熟悉 3.双指针法是字符串处理的常客 阅读全文
摘要:
1.Lambda表达式就是一个匿名内部类。就是一个匿名内部类或者说是函数式接口中方法的具体实现 (o1,o2)->{ } 只有一个参数,()可以省略。方法实现只有一句,{ }可以省略 2.Comparator接口中compare(o1,o2)方法 如果:o1 > o2 return 正数 换句话说, 阅读全文