👀阿无
👀阿无
全部文章
分类
题解(16)
归档
标签
去牛客网
登录
/
注册
阿无
全部文章
(共16篇)
题解 | #二叉树根节点到叶子节点和为指定值的路径#
借鉴了牛客讨论区和Leetcode的题解。加了注释方便理解 public ArrayList<ArrayList<Integer>> pathSum (TreeNode root, int sum) { // write code here ...
dfs
回溯
2021-08-06
0
315
题解 | #三数之和#
// 从Leetcode取经而来 import java.util.Arrays; import java.util.ArrayList; public class Solution { pu...
2021-08-03
0
302
题解 | #矩阵的最小路径和#
思路:构建dp,每一个位置记录走过的路径和,最后返回右下角即可。可以将matrix.length 和 matrix[0].length 提出来 赋入新变量中,这样可读性会更高。 public int minPathSum (int[][] matrix) { // write cod...
dp
2021-08-02
0
328
题解 | #岛屿数量#
public int solve (char[][] grid) { // write code here int count=0; //返回结果 for(int i=0;i<grid.length;i++){ ...
2021-08-02
0
390
题解 | #删除有序链表中重复的元素-II#
借鉴了题解并进行了一点小优化 public String longestCommonPrefix (String[] strs) { // write code here if(strs==null || strs.length==0) return "&...
2021-07-26
0
371
题解 | #接雨水问题#
思路:先判断 最左最右哪边高,如果右边高于左边则 先执行 左边的循环,left_max用来记 当前柱子height[i] 与左边最大的值left_max比较(因为左边小于右边,所以只有小于左边,才能存储水),且存储的水量为 left_max 和当前柱 height[i]的差值。同理,当遍历到有一个柱...
2021-07-26
0
325
题解 | #最长公共子串#
index和maxLength是参考了其他大佬的操作,以及返回的str1.substring(index-maxLength+1,index+1);这里的循环其实可以从dp[0][0]开始,需要判断i==0||j==0,单独弄出来处理会比较更容易明白吧(对我而言) 题目保证str1和str2的最长公...
2021-07-20
0
356
题解 | #最长回文子串#
代码: public int getLongestPalindrome(String A, int n) { boolean [][]dp=new boolean[n][n]; //构建dp for(int i=0;i<n;i++) dp[i][i]=tr...
2021-07-20
0
326
题解 | #子数组的最大累加和问题#
分析:这里需要理解arr[i]=Math.max(arr[i],arr[i-1]+arr[i]); 举个例子理解: f(1) =( (f(0)+f(1))>f(1) )? (f(0)+f(1)) :f(1) ,简单理解也就是看前一个下标的值是否大于0,如果小于0则仍是当前下标值不变,若大于0...
2021-07-18
0
363
题解 | #二叉树的之字形层序遍历#
思路:和广度优先搜索一样的思路,只是每隔一层需要将元素倒置,这里只需使用ArrayList的头插法即可。 public ArrayList<ArrayList<Integer>> zigzagLevelOrder (TreeNode root) { i...
2021-07-16
0
411
首页
上一页
1
2
下一页
末页