随笔分类 - LeetCode解题
刷题笔记
    
摘要:编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的
        阅读全文
                
摘要:73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 进阶: 一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。 一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方
        阅读全文
                
摘要:150. 逆波兰表达式求值 根据 逆波兰表示法,求表达式的值。 有效的算符包括 +、-、*、/ 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。 说明: 整数除法只保留整数部分。 给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。 示例 1: 输入:tok
        阅读全文
                
摘要:1603. 设计停车系统 请你给一个停车场设计一个停车系统。停车场总共有三种不同大小的车位:大,中和小,每种尺寸分别有固定数目的车位。 请你实现 ParkingSystem 类: ParkingSystem(int big, int medium, int small) 初始化 ParkingSys
        阅读全文
                
摘要:92. 反转链表 II 给你单链表的头节点 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 示例 1: 输入:head = [1,2,3,4,5], left = 2, right
        阅读全文
                
摘要:由于对于动归了解不够深入,以及没有用动归做过类似的字符串匹配题目,导致今天这道题花费了整整一个下午,外加看了别人说要用动归才想出来,害,真菜。 115. 不同的子序列 给定一个字符串 s 和一个字符串 t ,计算在 s 的子序列中 t 出现的个数。 字符串的一个 子序列 是指,通过删除一些(也可以不
        阅读全文
                
摘要:59. 螺旋矩阵 II 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n = 3 输出:[[1,2,3],[8,9,4],[7,6,5]] 示例 2: 输入:n = 1 输出:[[1]] 提示: 
        阅读全文
                
摘要:54. 螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入: matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出: [1,2,3,6,9,8,7,4,5] 示例 2: 输入: matrix = [[1,
        阅读全文
                
摘要:706. 设计哈希映射 不使用任何内建的哈希表库设计一个哈希映射(HashMap)。 实现 MyHashMap 类: MyHashMap() 用空映射初始化对象 void put(int key, int value) 向 HashMap 插入一个键值对 (key, value) 。如果 key 已
        阅读全文
                
摘要:不使用任何内建的哈希表库设计一个哈希集合(HashSet)。 实现 MyHashSet 类: void add(key) 向哈希集合中插入值 key 。bool contains(key) 返回哈希集合中是否存在这个值 key 。void remove(key) 将给定值 key 从哈希集合中删除。
        阅读全文
                
摘要:331. 验证二叉树的前序序列化 序列化二叉树的一种方法是使用前序遍历。当我们遇到一个非空节点时,我们可以记录下这个节点的值。如果它是一个空节点,我们可以使用一个标记值记录,例如 #。 _9_ / \ 3 2 / \ / \ 4 1 # 6 / \ / \ / \ # # # # # # 例如,上面
        阅读全文
                
摘要:昨天的题基础上加了乘法和除法,但去除了括号,其实也很简单,既然知道了怎么利用栈实现基础的"1+1" ,那么乘法或除法只需要将栈中的上一个数a乘上或除以当前这个数b,得到c,然后让a出栈,c入栈就行了,这里可能会被先乘后除再加再减的数学计算规则给误导,如果再加上括号,导致越想越复杂,其实并没有那么难,
        阅读全文
                
摘要:昨天刚到剑指offer里面看到这道题,今天每日一题刚好就是它... 实现一个基本的计算器来计算一个简单的字符串表达式 s 的值。 示例 1: 输入:s = "1 + 1" 输出:2 示例 2: 输入:s = " 2-1 + 2 " 输出:3 示例 3: 输入:s = "(1+(4+5+2)-3)+(
        阅读全文
                
摘要:132. 分割回文串 II 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是回文。 返回符合要求的 最少分割次数 。 示例 1: 输入:s = "aab" 输出:1 解释:只需一次分割就可将 s 分割成 ["aa","b"] 这样两个回文子串。 示例 2: 输入:s = "a" 输出:
        阅读全文
                
摘要:131. 分割回文串 给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。 返回 s 所有可能的分割方案。 示例: 输入: "aab" 输出: [ ["aa","b"], ["a","a","b"] ] 记忆化搜索保存所有回文串。 然后DFS搜索所有回文串的组合。 class Solu
        阅读全文
                
摘要:给定一个循环数组(最后一个元素的下一个元素是数组的第一个元素),输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1。 示例 1: 输入: [1,2,1]输出: [2,-1,
        阅读全文
                
摘要:遇到一道比较常规又能锻炼机械思维的题,打卡。 题目来源:https://leetcode-cn.com/problems/string-to-integer-atoi/ 题目:字符串转换整数(atoi) 请你来实现一个 atoi 函数,使其能将字符串转换成整数。 首先,该函数会根据需要丢弃无用的开头
        阅读全文
                
摘要:今天遇到一道DP题,记录一下思路,以免遗忘。 题目:地下城游戏 题目来源:https://leetcode-cn.com/problems/dungeon-game/ 一些恶魔抓住了公主(P)并将她关在了地下城的右下角。地下城是由 M x N 个房间组成的二维网格。我们英勇的骑士(K)最初被安置在左
        阅读全文
                
摘要:今天遇到一道题,不得不说,思路决定一切,分享一下我的解题心路历程和对大佬的解题方式的解析与感想。 820. 单词的压缩编码 题目来源:https://leetcode-cn.com/problems/short-encoding-of-words/ 给定一个单词列表,我们将这个列表编码成一个索引字符
        阅读全文
                
摘要:题目总结: 一.拼写单词 二.最长回文串 三.水壶问题 四.两数之和 五.最小的K个数 题目来源:https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-characters 扎实基础,最为重要。 题目一:拼写单词 给你一份
        阅读全文
                

 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号