下一次什么时候可以修改昵称
下一次什么时候可以修改昵称
全部文章
题解
读书笔记(15)
归档
标签
去牛客网
登录
/
注册
火龙山谷
炎龙侠
全部文章
/ 题解
(共60篇)
Java-LeetCode169. 多数元素-多数投票算法 | 快速排序思想
算法 1.多数投票算法 2.出现次数超过一半的数字则超过其他所有数字出现次数之和 3.保存两个变量,result和times,遍历数组 如果当前数字等于result,times加一 如果当前数字不等于result,且times不等于0,times减一 如果当前数字不等于result,且times等于...
Java
排序
数组
2020-11-02
1
727
Java-LeetCode349. 两个数组的交集-2HashSet | 排序&双指针
算法 使用两个HashSet public int[] intersection(int[] nums1, int[] nums2) { HashSet<Integer> set1 = new HashSet<>(); for (int x : nums...
Java
双指针
HashSet
2020-11-02
0
533
Java-LeetCode543. 二叉树的直径-递归&二叉树的深度
算法 1.每个节点有三种路径:贯穿节点的路径,贯穿左子节点的路径,贯穿右子节点的路径 2.贯穿节点的路径等于左子树的深度+右子树的深度,左子节点和右子节点的路径可以递归计算 3.比较最大的即可 public int diameterOfBinaryTree(TreeNode root) { ...
递归
Java
二叉树
2020-11-02
0
582
Java-LeetCode98. 验证二叉搜索树&958. 二叉树的完全性检验-中序遍历 | 递归 & 层次遍历
LeetCode98. 验证二叉搜索树 算法 1.递归 2.重载一个函数,界定节点值的范围(lower, upper) 3.递归判断左子树和右子树是否是二叉搜索树 public boolean isValidBST(TreeNode root) { return isValidBST...
二叉树
栈
队列
2020-11-01
35
1583
Java-LeetCode94&144&145. 二叉树的三种遍历-递归 | 迭代
递归 算法 递归 public void preorder(TreeNode root, List<Integer> list) { if (root != null) { list.add(root.val); preorder(root...
Java
二叉树
栈
2020-11-01
70
1750
Java-LeetCode381. O(1) 时间插入、删除和获取随机元素-HashMap&ArrayList
算法 1.ArrayList保存所有元素;Random用于随机获取;HashMap的键是元素,值是键在ArrayList中的位置索引,用LinkedHashSet保存可以以O(1)的时间获取迭代器并删除第一个 2.插入: HashMap中不存在,新建一个LinkedHashSet添加索引; Hash...
Java
HashMap
设计数据结构
2020-10-31
0
655
Java&Go-LeetCode463. 岛屿的周长-减去重复边
算法 1.统计陆地(1)的个数 2.统计重边个数,没遇到一个陆地检查其下方和右方是否也是陆地,如果是就含有一个重边 3.4*陆地个数-2*重边个数即是岛屿周长 public int islandPerimeter(int[][] grid) { int row = grid.lengt...
Java
Go
数字
2020-10-30
0
622
Java-LeetCode64. 最小路径和-动态规划
算法 1.动态规划:dp[i][j]表示(0,0)到(i,j)位置的最小路径和 2.初始状态:dp[i][0] = dp[i-1][0] + matrix[i][0];dp[0][i] = dp[0][i-1] + matrix[0][i] 3.过渡公式:dp[i][j] = Math.min(dp...
动态规划
2020-10-29
2
873
Java-LeetCode129. 求根到叶子节点数字之和-递归
算法 1.递归 2.重载一个函数sumNumbers(TreeNode root, int sum)表示计算到root节点为止的sum值 3.当左右子节点都为null时,是叶子节点,返回sum 4.当左或右子节点不为null时,不是叶子节点,递归计算左或右子节点的sum值 public int...
递归
二叉树
2020-10-29
18
1390
Java-LeetCode72. 编辑距离-动态规划
原题插入删除替换代价都是1 算法 1.动态规划:dp[i][j]表示word1的前i个字符编辑成word2的前j个字符需要的最小操作数 2.初始状态:dp[i][0] = i,i次删除;dp[0][i] = i,i次插入 3.过渡公式: 当i字符等于j字符时:dp[i][j] = dp[i-1]...
动态规划
2020-10-28
36
1821
首页
上一页
1
2
3
4
5
6
下一页
末页