- 博客(6)
- 收藏
- 关注
原创 3.28学习内容
变态青蛙跳public class Solution { public int JumpFloorII(int target) { int[] dp = new int[target+2]; dp[1]=1; dp[2]=2; for(int i=3;i<=target;i++){ dp[i...
2020-03-29 18:27:52 86
原创 3.27 学习内容
HashMap 与 内部类1.HashMap 是非线程安全的,需要collections的同步方法synchronizedMap。继承AbstractMap。ConcurrentHashMap是线程安全的,使用了分段锁,HashTable是线程安全的,任一时间只有一个线程能写Hashtable。继承自Dictionary。LinkedHashMap 保存插入顺序,也可按照构造时的参数,...
2020-03-27 22:11:54 72
原创 leetcode 149 平面上直线最多的点
终于在LeetCode上ac,呜呜呜暴风哭泣这个题目就是传说中看起来很简单,实际上会因为自己逻辑的漏洞错很多的题目。由于直接求斜率有可能因为double精度的问题判断出现错误。在别人的启发下,用乘法就可以很好的解决这个问题,不用因为double精度的问题导致判断错误。但是由于乘法,有些用例会导致溢出,所以要将之变成long型。这里的特殊情况就只有重合点的问题了,因为变成乘法不用考虑除数为0...
2019-12-05 10:19:22 60
原创 leet code 4 树的最小深度
在这个题目中,太容易与最大深度有重复的想法了,会默认为有一个空白的节点,来比较,其实没有那个空白的节点,如果左边节点为空,那么这个节点的右边节点成为他的子树,不存在一个空白的来将右边的节点减去。所以这个题目除了要判断是不是叶节点之外,还要判断是左右节点是否为空。public class Solution { public int run(TreeNode root) { ...
2019-12-02 16:10:05 66
原创 leetcode 第二题 寻找single number
这个题目我是一点头绪都没有,可能是因为没有接触过这种,想着用栈好像也不对,用桶太可怕了,内存肯定爆掉了,而且不允许使用额外内存。然后看到网上的思路是用异或^ ,按位异或,相同为0 ,不同为1,因为两个相同的数字异或为0 ,初始值设置为0 ,因为0与其他数字异或为这个数字。最后由于都有相同的数字,异或的最后结果肯定会得到单下的数字。public class Solution { p...
2019-11-25 16:58:55 63
原创 二叉树最大深度 leetcode
这个题目开始要想是用递归,但是递归的形式,没有想对。直接判断left right 比较麻烦,不如在递归调用的时候判断root是否为空。public class Solution { public int maxDepth(TreeNode root) { if(root==null){ return 0; } i...
2019-11-25 16:22:41 68
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人