
LeetCode
请保持优秀。
大智若愚,勤能补拙。
展开
-
300. Longest Increasing Subsequence (Medium)——最长递增子序列
前言: 本题目为动态规划思想的一道典型例题——最长递增子序列。 题目: 给定一个无序的整数数组,找到其中最长上升子序列的长度。 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是[2,3,7,101],它的长度是 4。 说明: 可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。 你算法的时间复杂度应该为...原创 2019-11-05 17:03:06 · 1617 阅读 · 0 评论 -
17. Letter Combinations of a Phone Number (Medium)——电话号码的字母组合
前言: 这是一道回溯算法的典型例题。 题目: 给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]. 说明: 尽管上面的答案是按字典序排列的...原创 2019-10-24 19:55:04 · 5292 阅读 · 0 评论 -
695. Max Area of Island (Medium)——岛屿的最大面积
前言: 本题目为深度优先遍历(DFS)算法的一道典型例题。 题目: 给定一个包含了一些 0 和 1的非空二维数组grid, 一个岛屿是由四个方向 (水平或垂直) 的1(代表土地) 构成的组合。你可以假设二维矩阵的四个边缘都被水包围着。 找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为0。) 示例 1: [[0,0,1,0,0,0,0,1,...原创 2019-10-22 19:49:56 · 2147 阅读 · 0 评论 -
1091. Shortest Path in Binary Matrix(Medium)——计算在网格中从原点到特定点的最短路径长度
前言: 刷了一段时间的LeetCode,准备找一些个人觉得比较好的题目分享给大家,同时也方便自己总结。 本题目为广度优先遍历(BFS)算法的一道典型例题。 题目: 在一个N ×N 的方形网格中,每个单元格有两种状态:空(0)或者阻塞(1)。 一条从左上角到右下角、长度为 k 的畅通路径,由满足下述条件的单元格C_1, C_2, ..., C_k组成: 相邻单...原创 2019-10-21 17:10:11 · 3991 阅读 · 0 评论