随笔分类 -  leetcode

上一页 1 2 3 4 5 6 7 下一页

58.Length of Last Word
摘要:题目链接:https://leetcode.com/problems/length-of-last-word/description/ 题目大意:给出一个字符串最后一个单词的长度。 法一:模拟,代码如下(耗时6ms): 1 public int lengthOfLastWord(String s) 阅读全文

posted @ 2018-03-04 20:57 二十年后20 阅读(116) 评论(0) 推荐(0)

11.Container With Most Water---两指针
摘要:题目链接:https://leetcode.com/problems/container-with-most-water/description/ 题目大意:给出一串数组(a1, a2, a3, ...an),表示坐标(i, ai),同样表示一条直线是从(i, 0)到(i, ai),从中选出两条直线 阅读全文

posted @ 2018-03-04 17:19 二十年后20 阅读(144) 评论(0) 推荐(0)

85.Maximal Rectangle---dp
摘要:题目链接:https://leetcode.com/problems/maximal-rectangle/description/ 题目大意:给出一个二维矩阵,计算最大的矩形面积(矩形由1组成)。例子如下: 法一:将每一行的数据都看成是一个直方图,而每个直方图的高度都是由上一行得到的,例如,上述例子 阅读全文

posted @ 2018-03-04 16:11 二十年后20 阅读(154) 评论(0) 推荐(0)

42.Trapping Rain Water---dp,stack,两指针
摘要:题目链接:https://leetcode.com/problems/trapping-rain-water/description/ 题目大意:与84题做比较,在直方图中计算其蓄水能力。例子如下: 法一(借鉴):暴力,还是很难想到的,需要推理数学功底。因为这里暴力的前提条件是:计算每个点的蓄水能力 阅读全文

posted @ 2018-03-02 17:04 二十年后20 阅读(331) 评论(0) 推荐(0)

84.Largest Rectangle in histogram---stack
摘要:题目链接:https://leetcode.com/problems/largest-rectangle-in-histogram/description/ 题目大意:在直方图中找出最大的矩形面积。例子如下: 法一:暴力,无任何优化,超时了。对于每个高度,分别向左和向右查找能到达的最远下标(在目前的 阅读全文

posted @ 2018-03-02 11:05 二十年后20 阅读(242) 评论(0) 推荐(0)

174.Dungeon Game---dp
摘要:题目链接 题目大意:从左上角到右下角,每一个格子都有各自的权值,如果权值为负,则当到达时,要失血;如果权值为正,则当到达时,要加血。当到达某个格子时,当前血量<=0,则死亡,到达不了右下角,所以此时要计算从左上角到右下角,初始应该最少携带多少血(即经过所有路径后所计算出的值),才不会死亡,能正常到达 阅读全文

posted @ 2018-03-01 16:58 二十年后20 阅读(179) 评论(0) 推荐(0)

64.Minimum Path Sum---dp
摘要:题目链接:https://leetcode.com/problems/minimum-path-sum/description/ 题目大意:从左上到右下的路径中,找出路径和最小的路径(与62,63题相联系)。 法一:dfs,果然超时,无剪枝。代码如下: 1 public int minPathSum 阅读全文

posted @ 2018-03-01 11:27 二十年后20 阅读(115) 评论(0) 推荐(0)

63.UniquePaths II---dp
摘要:题目链接 题目大意:与62题类似,只是这个题中间有障碍。 法一:dfs,依旧超时。代码如下: 1 public int uniquePathsWithObstacles(int[][] obstacleGrid) { 2 boolean vis[][] = new boolean[obstacleG 阅读全文

posted @ 2018-03-01 10:19 二十年后20 阅读(145) 评论(0) 推荐(0)

62.Unique Paths---dp
摘要:题目链接 题目大意:给一个m*n的方格,从左上角走到右下角,中间无任何障碍,问有多少种走法。 法一:DFS,超时,简单模板深搜,无任何剪枝,结果一半的数据超时。代码如下: 1 public int uniquePaths(int m, int n) { 2 int f[][] = {{0, 1}, 阅读全文

posted @ 2018-02-28 21:48 二十年后20 阅读(187) 评论(0) 推荐(0)

9.Palindrome Number
摘要:题目链接:https://leetcode.com/problems/palindrome-number/description/ 题目大意:给定一个int范围的数字,判断是否是回文(要求不要额外开辟空间)。 法一:将int数字转为string,直接做。代码如下: 1 public boolean 阅读全文

posted @ 2018-02-28 19:30 二十年后20 阅读(126) 评论(0) 推荐(0)

343.Integer Break---dp
摘要:题目链接:https://leetcode.com/problems/integer-break/description/ 题目大意:给定一个自然数,将其分解,对其分解的数作乘积,找出最大的乘积结果。例子如下: 法一(借鉴):dp,一维dp,dp[i]表示i的最大分解结果的乘积,而dp[5]可以dp 阅读全文

posted @ 2018-02-28 17:15 二十年后20 阅读(143) 评论(0) 推荐(0)

72.Edit Distance---dp
摘要:题目链接:https://leetcode.com/problems/edit-distance/description/ 题目大意:找出两个字符串之间的编辑距离(每次变化都只消耗一步)。 法一(借鉴):经典dp。代码如下(耗时15ms): 1 //dp公式:dp[i][j]表示第一个字符串前i个字 阅读全文

posted @ 2018-02-26 21:19 二十年后20 阅读(137) 评论(0) 推荐(0)

516.Longest Palindromic subsequence---dp
摘要:题目链接:https://leetcode.com/problems/longest-palindromic-subsequence/description/ 题目大意:找出最长回文子序列(不连续),第5题是最长回文子串。 法一(借鉴):dp,与5题,最长回文子串进行比较,这个dp更难一点。代码如下 阅读全文

posted @ 2018-02-26 11:32 二十年后20 阅读(111) 评论(0) 推荐(0)

5.Longest Palindromic Substring---dp
摘要:题目链接:https://leetcode.com/problems/longest-palindromic-substring/description/ 题目大意:找出最长回文子字符串(连续)。 法一:暴力,三层for循环,超时。代码如下: 1 public String longestPalin 阅读全文

posted @ 2018-02-26 10:31 二十年后20 阅读(111) 评论(0) 推荐(0)

17. Letter Combinations of a Phone Number
摘要:题目链接:https://leetcode.com/problems/letter-combinations-of-a-phone-number/description/ 题目大意:给出所给数字所对应字母的所有组合字符串。例子如下: 解法一:深搜,没遇到一个数字,就dfs一次它所对应的字母,然后再回 阅读全文

posted @ 2018-01-22 15:56 二十年后20 阅读(196) 评论(0) 推荐(0)

37.Sudoku Solver
摘要:题目链接:https://leetcode.com/problems/sudoku-solver/description/ 题目大意:数独。要求:每行每列、每个小3*3方块都是1-9的数,且不重复。 解法一:深搜。要注意细节:java传数组是地址,不是传值,每一次的改变都是在原数组上进行的。代码如下 阅读全文

posted @ 2018-01-11 16:09 二十年后20 阅读(199) 评论(0) 推荐(0)

35.Search Insert Position
摘要:题目链接:https://leetcode.com/problems/search-insert-position/description/ 题目大意:一串升序数组和target,如果在数组中能找到target,则返回下标值;如果找不到,则返回应插入的位置下标值。 解法一:利用二分查找,查找是否有t 阅读全文

posted @ 2018-01-06 22:18 二十年后20 阅读(145) 评论(0) 推荐(0)

34.Find First and Last Position of Element in Sorted Array---头条面试题、《剑指offer》38
摘要:题目链接 题目大意:找出一串升序数组中target值的起始下标和结束下标值,如果不存在则返回{-1,-1}。 解法一:用二分查找,找到数组中的target,然后找其左边和右边的target下标值。代码如下(耗时11ms): 1 public int[] searchRange(int[] nums, 阅读全文

posted @ 2018-01-06 21:37 二十年后20 阅读(148) 评论(0) 推荐(0)

240.Search a 2D Matrix II
摘要:题目链接:https://leetcode.com/problems/search-a-2d-matrix-ii/description/ 题目大意:一个矩阵,每行从左到右,数值以升序排列;每列从上到下,数值以升序排列。从这个矩阵中找到是否有target数值存在,如果有返回true,否则返回fals 阅读全文

posted @ 2018-01-06 17:16 二十年后20 阅读(129) 评论(0) 推荐(0)

74.Search a 2D Matrix
摘要:题目链接:https://leetcode.com/problems/search-a-2d-matrix/description/ 题目大意:一个矩阵,从左到右有序排列(未给升序或降序),从上到下,从小到大排列。给出一个target值,在这个矩阵中找找是否有该值,如果有返回true,否则返回fal 阅读全文

posted @ 2018-01-06 16:26 二十年后20 阅读(146) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 下一页

导航