leetcode
qq_40742615
这个作者很懒,什么都没留下…
展开
-
LeetCode869重新排序得到 2 的幂 Java
题目:给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false。示例 1:输入:1输出:true示例 2:输入:10输出:false示例 3:输入:16输出:true示例 4:输入:24输出:false示例 5:输入:46输出:true提示1 <= N <= 10^9思路 :方法一:列出该数字所..原创 2021-10-28 11:54:32 · 190 阅读 · 0 评论 -
LeetCode453最小操作次数使数组元素相等 Java
题目:给你一个长度为 n 的整数数组,每次操作将会使 n - 1 个元素增加 1 。返回让数组所有元素相等的最小操作次数。示例 1:输入:nums = [1,2,3]输出:3解释:只需要3次操作(注意每次操作会增加两个元素的值):[1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]示例 2:输入:nums = [1,1,1]输出:0提示n == nums.length1 <= nums.leng..原创 2021-10-20 14:58:05 · 181 阅读 · 0 评论 -
LeetCode211 添加与搜索单词 - 数据结构设计 Java
题目:请你设计一个数据结构,支持 添加新单词 和 查找字符串是否与任何先前添加的字符串匹配 。实现词典类 WordDictionary : WordDictionary() 初始化词典对象 void addWord(word) 将 word 添加到数据结构中,之后可以对它进行匹配 bool search(word) 如果数据结构中存在字符串与 word 匹配,则返回 true ;否则,返回 false 。word 中可能包含一些 '.' ,每个 . 都可以表示任何一个字..原创 2021-10-19 15:27:02 · 167 阅读 · 0 评论 -
LeetCode208 实现 Trie (前缀树) Java
题目:Trie(发音类似 "try")或者说 前缀树 是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补完和拼写检查。请你实现 Trie 类: Trie() 初始化前缀树对象。 void insert(String word) 向前缀树中插入字符串 word 。 boolean search(String word) 如果字符串 word 在前缀树中,返回 true(即,在检索之前已经插入);否则,返回 false 。..原创 2021-10-19 15:25:12 · 93 阅读 · 0 评论 -
LeetCode476 数字的补数 Java
题目:给你一个 正 整数 num ,输出它的补数。补数是对该数的二进制表示取反。示例 1:输入:num = 5输出:2解释:5 的二进制表示为 101(没有前导零位),其补数为 010。所以你需要输出 2 。示例 2:输入:num = 1输出:0解释:1 的二进制表示为 1(没有前导零位),其补数为 0。所以你需要输出 0 。提示给定的整数 num 保证在 32 位带符号整数的范围内。num >= 1你可以假定二进制数不包含前导零位。本题与 1009..原创 2021-10-18 10:05:58 · 65 阅读 · 0 评论 -
LeetCode38 外观数列 Java
题目:给定一个正整数 n ,输出外观数列的第 n 项。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。你可以将其视作是由递归公式定义的数字字符串序列: countAndSay(1) = "1" countAndSay(n) 是对 countAndSay(n-1) 的描述,然后转换成另一个数字字符串。前五项如下:1. 12. 113. 214. 12115. 111221第一项是数字 1 ..原创 2021-10-15 10:12:52 · 77 阅读 · 0 评论 -
LeetCode剑指 Offer II 069 山峰数组的顶部 Java
题目:符合下列属性的数组 arr 称为 山峰数组(山脉数组) :1、arr.length >= 32、存在 i(0 < i < arr.length - 1)使得: arr[0] < arr[1] < ... arr[i-1] < arr[i] arr[i] > arr[i+1] > ... > arr[arr.length - 1]给定由整数组成的山峰数组 arr ,返回任何满足 arr[0] < arr[1] < .....原创 2021-10-14 11:53:03 · 160 阅读 · 0 评论 -
LeetCode 29两数相除 Java
题目:给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3输出: 3解释: 10/3 = truncate(3.33333..) = ..原创 2021-10-12 10:16:21 · 134 阅读 · 0 评论 -
LeetCode273 整数转换英文表示 Java
题目:将非负整数 num 转换为其对应的英文表示。示例 1:输入:num = 123输出:"One Hundred Twenty Three"示例 2:输入:num = 12345输出:"Twelve Thousand Three Hundred Forty Five"示例 3:输入:num = 1234567输出:"One Million Two Hundred Thirty Four Thousand Five Hundred Sixty Seven"示..原创 2021-10-11 11:04:06 · 127 阅读 · 0 评论 -
LeetCode187 重复的DNA序列 Java
题目:所有 DNA 都由一系列缩写为 'A','C','G' 和 'T' 的核苷酸组成,例如:"ACGAATTCCG"。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。编写一个函数来找出所有目标子串,目标子串的长度为 10,且在 DNA 字符串 s 中出现次数超过一次。示例 1:输入:s = "AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT"输出:["AAAAACCCCC","CCCCCAAAAA"]示例 2:输入:s = "AAAAA..原创 2021-10-08 16:47:19 · 173 阅读 · 0 评论 -
LeetCode134 加油站 Java
题目:在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。说明:如果题目有解,该答案即为唯一答案。输入数组均为非空数组,且长度相同。输入数组中的元素均为非负数。示例 1:输入: gas = [1,2,3,4,5]cost = ..原创 2021-10-07 15:38:37 · 91 阅读 · 0 评论 -
LeetCode517 超级洗衣机 Java
题目:假设有 n 台超级洗衣机放在同一排上。开始的时候,每台洗衣机内可能有一定量的衣服,也可能是空的。在每一步操作中,你可以选择任意 m (1 <= m <= n) 台洗衣机,与此同时将每台洗衣机的一件衣服送到相邻的一台洗衣机。给定一个整数数组 machines 代表从左至右每台洗衣机中的衣物数量,请给出能让所有洗衣机中剩下的衣物的数量相等的 最少的操作步数 。如果不能使每台洗衣机中衣物的数量相等,则返回 -1 。示例 1:输入:machines = [1,0,5]输出..原创 2021-09-29 14:59:29 · 104 阅读 · 0 评论 -
LeetCode437 路径总和 III Java
题目:给定一个二叉树的根节点 root ,和一个整数 targetSum ,求该二叉树里节点值之和等于 targetSum 的 路径 的数目。路径 不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。示例 1:输入:root = [10,5,-3,3,2,null,11,3,-2,null,1], targetSum = 8输出:3解释:和等于 8 的路径有 3 条,如图所示。示例 2:输入:root = [5,4,8,11,nu..原创 2021-09-28 11:51:30 · 66 阅读 · 0 评论 -
LeetCode371 两整数之和 Java
题目:给你两个整数 a 和 b ,不使用 运算符 + 和 - ,计算并返回两整数之和。示例 1:输入:a = 1, b = 2输出:3示例 2:输入:a = 2, b = 3输出:5提示-1000 <= a, b <= 1000思路 :不能用加减,那就只能用位运算了。使用位运算模拟 列竖式如: 算 10+3 10: 1010 3: 11异或求出两数之和(进位还没加上去)10^3=(1001)2按位与求出进位,再左移一位求..原创 2021-09-26 11:34:42 · 76 阅读 · 0 评论 -
LeetCode430 扁平化多级双向链表 Java
题目:多级双向链表中,除了指向下一个节点和前一个节点指针之外,它还有一个子链表指针,可能指向单独的双向链表。这些子列表也可能会有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示。给你位于列表第一级的头节点,请你扁平化列表,使所有结点出现在单级双链表中。示例 1:输入:head = [1,2,3,4,5,6,null,null,null,7,8,9,10,null,null,11,12]输出:[1,2,3,7,8,11,12,9,10,4,5,6]解释:输入..原创 2021-09-24 11:14:15 · 66 阅读 · 0 评论 -
LeetCode326 3的次幂 Java
题目:给定一个整数,写一个函数来判断它是否是 3 的幂次方。如果是,返回 true ;否则,返回 false 。整数 n 是 3 的幂次方需满足:存在整数 x 使得 n == 3x示例 1:输入:n = 27输出:true示例 2:输入:n = 0输出:false示例三输入:n = 9输出:true提示-231 <= n <= 231 - 1思路 :不断除以3,直到结果为1 。不能整除代表不是3的次幂使用公约数,先算出三的最大次..原创 2021-09-23 09:30:39 · 87 阅读 · 0 评论 -
LeetCode292 Nim 游戏 Java
题目:你和你的朋友,两个人一起玩 Nim 游戏: ·桌子上有一堆石头。 ·你们轮流进行自己的回合,你作为先手。 ·每一回合,轮到的人拿掉 1 - 3 块石头。 ·拿掉最后一块石头的人就是获胜者。假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为 n 的情况下赢得游戏。如果可以赢,返回 true;否则,返回 false 。示例 1:输入:n = 4输出:false 解释:如果堆中有 4 块石头,那么你永远不会赢得比赛; ..原创 2021-09-18 09:33:35 · 107 阅读 · 0 评论 -
LeetCode37 解数独 Java
题目:编写一个程序,通过填充空格来解决数独问题。数独的解法需 遵循如下规则:数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用 '.' 表示。示例 1:输入:board = [["5","3",".",".","7",".",".",".","."],["6",".",".","1","9","5",".",".","."],[".","9..原创 2021-09-17 13:43:46 · 98 阅读 · 0 评论 -
LeetCode36 有效的数独 Java
题目:请你判断一个 9x9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。1、数字 1-9 在每一行只能出现一次。2、数字 1-9 在每一列只能出现一次。3、数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)4、数独部分空格内已填入了数字,空白格用 '.' 表示。示例 1:输入:board = [["5","3",".",".","7",".",".",".","."],["6",".",".","1","9","5",..原创 2021-09-17 10:10:10 · 93 阅读 · 0 评论 -
LeetCode 212 单词搜索II Java
题目:给定一个 m x n 二维字符网格 board 和一个单词(字符串)列表 words,找出所有同时在二维网格和字典中出现的单词。单词必须按照字母顺序,通过 相邻的单元格 内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母在一个单词中不允许被重复使用。示例 1:输入:board = [["o","a","a","n"],["e","t","a","e"],["i","h","k","r"],["i","f","l","v"]], words = ..原创 2021-09-16 14:56:08 · 141 阅读 · 0 评论 -
LeetCode 52 N皇后II Java
题目:n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回 n 皇后问题 不同的解决方案的数量。示例 1:输入:n = 4输出:2解释:如上图所示,4 皇后问题存在两个不同的解法。示例 2:输入:n = 1输出:1提示1 <= n <= 9皇后彼此不能相互攻击,也就是说:任何两个皇后都不能处于同一条横行、纵行或斜线上。思路 :与LeetCode 51题思路一样,但.原创 2021-09-15 15:03:51 · 148 阅读 · 0 评论 -
LeetCode 51 N皇后 Java
题目:n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。示例 1:输入:n = 4输出:[[".Q..","...Q","Q...","..Q."],["..Q.","Q...","...Q",".Q.."]]解释:如上图所示,4 皇后问题存在两个不同的解法。.原创 2021-09-15 14:53:30 · 185 阅读 · 0 评论 -
LeetCode162 寻找峰值 Java
这里写自定义目录标题系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入系列文章目录提示:这里可以添加系列文章的所有原创 2021-09-15 14:26:05 · 125 阅读 · 0 评论