Day 56 673. 最长递增子序列的个数 198. 打家劫舍题目12345678910111213给定一个未排序的整数数组,找到最长递增子序列的个数。示例 1:输入: [1,3,5,4,7]输出: 2解释: 有两个最长递增子序列,分别是 [1, 3, 4, 7] 和[1, 3, 5, 7]。示例 2:输入: [2,2,2,2,2]输出: 5解释: 最长递增子序列的长度是1,并且存在5个子序列的长度为1,因此输出5。注意: 给定的数组长度不 2021-11-04 91-day-algorithm #DP
Day 55 198. 打家劫舍 198. 打家劫舍题目123456789101112131415161718192021222324252627282930你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷 2021-11-03 91-day-algorithm #DP
Day 54 746. 使用最小花费爬楼梯 746. 使用最小花费爬楼梯题目1234567891011121314151617181920212223242526数组的每个下标作为一个阶梯,第 i 个阶梯对应着一个非负数的体力花费值 cost[i](下标从 0 开始)。每当你爬上一个阶梯你都要花费对应的体力值,一旦支付了相应的体力值,你就可以选择向上爬一个阶梯或者爬两个阶梯。请你找出达到楼层顶部的最低花费。在开始时,你可以选择从下标为 0 2021-11-02 91-day-algorithm #DP
Day 53 Top View of a Tree Top View of a Tree题目12345678910111213141516171819202122232425262728Given a binary tree root, return the top view of the tree, sorted left-to-right.Constraintsn ≤ 100,000 where n is the number of nodes 2021-11-01 91-day-algorithm #DFS
Day 52 Shortest Cycle Containing Target Node Shortest Cycle Containing Target Node题目12345678910111213141516171819202122232425262728293031323334353637383940You are given a two-dimensional list of integers graph representing a directed graph as an 2021-10-31 91-day-algorithm #traceback #BFS
Day 51 1162. 地图分析 1162. 地图分析题目123456789101112131415161718192021222324252627282930313233343536你现在手里有一份大小为 N x N 的 网格 grid,上面的每个 单元格 都用 0 和 1 标记好了。其中 0 代表海洋,1 代表陆地,请你找出一个海洋单元格,这个海洋单元格到离它最近的陆地单元格的距离是最大的。我们这里说的距离是「曼哈顿距离」( 2021-10-30 91-day-algorithm #traceback #BFS
Day 50 695. 岛屿的最大面积 695. 岛屿的最大面积题目123456789101112131415161718192021222324252627282930313233343536373839给你一个大小为 m x n 的二进制矩阵 grid 。岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。岛 2021-10-29 91-day-algorithm #traceback #DFS
Day 49 52. N皇后 II 52. N 皇后 II题目12345678910111213141516171819n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回 n 皇后问题 不同的解决方案的数量。示例 1:输入:n = 4输出:2解释:如上图所示,4 皇后问题存在两个不同的解法。示例 2:输入:n = 1输出:1 提示:1 <= n <= 2021-10-28 91-day-algorithm #traceback #DFS
Day 48 401. 二进制手表 401. 二进制手表题目12345678910111213141516171819202122232425262728293031二进制手表顶部有 4 个 LED 代表 小时(0-11),底部的 6 个 LED 代表 分钟(0-59)。每个 LED 代表一个 0 或 1,最低位在右侧。例如,下面的二进制手表读取 "3:25" 。给你一个整数 turnedOn ,表示当前亮着的 2021-10-27 91-day-algorithm #traceback
Day 47 Number of Operations to Decrement Target to Zero Number of Operations to Decrement Target to Zero题目123456789101112131415161718192021222324252627282930You are given a list of positive integers nums and an integer target.Consider an operation where we 2021-10-26 91-day-algorithm #sliding window
Day 46 76. 最小覆盖子串 76. 最小覆盖子串题目1234567891011121314151617181920212223242526272829303132333435给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 注意:对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符 2021-10-25 91-day-algorithm #unordered_map #sliding window
Day 45 438. 找到字符串中所有字母异位词 438. 找到字符串中所有字母异位词题目1234567891011121314151617181920212223242526272829给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。 示例 1:输入: s = "cbaebabacd", p = & 2021-10-24 91-day-algorithm #sliding window
Day 44 837. 新21点 837. 新 21 点题目1234567891011121314151617181920212223242526272829303132333435爱丽丝参与一个大致基于纸牌游戏 “21点” 规则的游戏,描述如下:爱丽丝以 0 分开始,并在她的得分少于 K 分时抽取数字。 抽取时,她从 [1, W] 的范围中随机获得一个整数作为分数进行累计,其中 W 是整数。 每次抽取都是独立的,其结果具有相同的 2021-10-23 91-day-algorithm #sliding window #Dynamic Programming
Day 43 1456. 定长子串中元音的最大数目 1456. 定长子串中元音的最大数目题目123456789101112131415161718192021222324252627282930313233343536373839给你字符串 s 和整数 k 。请返回字符串 s 中长度为 k 的单个子字符串中可能包含的最大元音字母数。英文中的 元音字母 为(a, e, i, o, u)。 示例 1:输入:s = "abciiidef&quo 2021-10-22 91-day-algorithm #sliding window
Day 42 778. 水位上升的泳池中游泳 778. 水位上升的泳池中游泳题目1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950在一个 N x N 的坐标方格 grid 中,每一个方格的值 grid[i][j] 表示在位置 (i,j) 的平台高度。现在开始下雨了。当时间为 t 时,此时雨水导致水池中任意位置的水 2021-10-21 91-day-algorithm #graph #Binary Search #UnionSet
Day 41 822. Kth-Pair-Distance 822. Kth-Pair-Distance题目12345678910111213141516171819202122232425Given a list of integers nums and an integer k,return the k-th smallest abs(x - y) for every pair of elements (x, y) in nums. Note that 2021-10-20 91-day-algorithm #Binary Search
Day 40 796. Minimum Light Radius 796. Minimum Light Radius题目12345678910111213141516171819202122You are given a list of integers numsrepresenting coordinates of houses on a 1-dimensional line. You have 3 street lights that you can put 2021-10-19 91-day-algorithm #Binary Search
Day 39 762.Number Stream to Intervals 762.Number Stream to Intervals题目1234567891011121314Given a list of integers nums, return the number of pairs i < j such that nums[i] > nums[j] * 3.Constraintsn ≤ 100,000 where n is the length of 2021-10-18 91-day-algorithm #mergeSort
Day 38 278. 第一个错误的版本 278. 第一个错误的版本题目1234567891011121314151617181920212223242526272829你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。你 2021-10-17 91-day-algorithm #Binary Search
Day 37 69. Sqrt(x) 69. Sqrt(x)题目12345678910111213141516171819202122给你一个非负整数 x ,计算并返回 x 的 算术平方根 。由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。 示例 1:输入:x = 4输出:2示例 2:输入:x = 8输出:2解释:8 的算 2021-10-16 91-day-algorithm #Binary Search