随笔分类 -  Leetcode (Java)

1 2 3 4 5 下一页

316. 去除重复字母 (JAVA)
摘要:给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置)。 示例 1: 输入:s = "bcabc"输出:"abc"示例 2: 输入:s = "cbacdcbc"输出:"acdb" 提示: 1 <= s.length < 阅读全文

posted @ 2023-07-22 16:45 joannae 阅读(79) 评论(0) 推荐(0)

214. 最短回文串 (JAVA)
摘要:给定一个字符串 s,你可以通过在字符串前面添加字符将其转换为回文串。找到并返回可以用这种方式转换的最短回文串。 示例 1: 输入:s = "aacecaaa"输出:"aaacecaaa"示例 2: 输入:s = "abcd"输出:"dcbabcd" 提示: 0 <= s.length <= 5 * 阅读全文

posted @ 2022-12-04 22:42 joannae 阅读(238) 评论(0) 推荐(0)

260. 只出现一次的数字 III (JAVA)
摘要:给你一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。 你必须设计并实现线性时间复杂度的算法且仅使用常量额外空间来解决此问题。 示例 1: 输入:nums = [1,2,1,3,2,5]输出:[3,5]解释:[5 阅读全文

posted @ 2022-11-16 19:44 joannae 阅读(62) 评论(0) 推荐(0)

264. 丑数 II (JAVA)
摘要:给你一个整数 n ,请你找出并返回第 n 个 丑数 。 丑数 就是只包含质因数 2、3 和/或 5 的正整数。 示例 1: 输入:n = 10输出:12解释:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 个丑数组成的序列。示例 2: 输入:n = 1输出:1解释:1 阅读全文

posted @ 2022-05-15 14:25 joannae 阅读(64) 评论(0) 推荐(0)

214. 最短回文串 (Java)
摘要:给定一个字符串 s,你可以通过在字符串前面添加字符将其转换为回文串。找到并返回可以用这种方式转换的最短回文串。 示例 1: 输入:s = "aacecaaa"输出:"aaacecaaa"示例 2: 输入:s = "abcd"输出:"dcbabcd" 提示: 0 <= s.length <= 5 * 阅读全文

posted @ 2022-05-14 17:02 joannae 阅读(139) 评论(0) 推荐(0)

211. 添加与搜索单词 - 数据结构设计 (JAVA)
摘要:请你设计一个数据结构,支持 添加新单词 和 查找字符串是否与任何先前添加的字符串匹配 。 实现词典类 WordDictionary : WordDictionary() 初始化词典对象void addWord(word) 将 word 添加到数据结构中,之后可以对它进行匹配bool search(w 阅读全文

posted @ 2022-01-31 16:47 joannae 阅读(58) 评论(0) 推荐(0)

301. 删除无效的括号 (JAVA)
摘要:给你一个由若干括号和字母组成的字符串 s ,删除最小数量的无效括号,使得输入的字符串有效。 返回所有可能的结果。答案可以按 任意顺序 返回。 示例 1: 输入: "()())()"输出: ["()()()", "(())()"]示例 2: 输入: "(a)())()"输出: ["(a)()()", 阅读全文

posted @ 2021-04-26 22:47 joannae 阅读(135) 评论(0) 推荐(0)

300. 最长递增子序列 (JAVA)
摘要:给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 示例 1: 输入:nums = [10,9,2,5,3,7,101,18] 阅读全文

posted @ 2021-04-21 22:54 joannae 阅读(752) 评论(0) 推荐(0)

297. 二叉树的序列化与反序列化 (JAVA)
摘要:序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列 / 反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列 阅读全文

posted @ 2021-04-20 23:04 joannae 阅读(118) 评论(0) 推荐(0)

238. 除自身以外数组的乘积 (JAVA)
摘要:给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。 示例: 输入: [1,2,3,4]输出: [24,12,8,6] 提示:题目数据保证数组之中任意元素的全部前缀元素和后缀( 阅读全文

posted @ 2021-04-12 22:15 joannae 阅读(71) 评论(0) 推荐(0)

234. 回文链表 (JAVA)
摘要:请判断一个链表是否为回文链表。 示例 1: 输入: 1->2输出: false示例 2: 输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 思路:改变前半部分或者后半部分List的next指针。由于改变前半部分只需要一次遍历(用快、慢 阅读全文

posted @ 2021-04-09 22:18 joannae 阅读(87) 评论(0) 推荐(0)

283. 移动零 (JAVA)
摘要:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明: 必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。 思路:双指针。快指针遍历数组,慢指针指向新数组的非零元素。 cl 阅读全文

posted @ 2021-04-07 22:02 joannae 阅读(91) 评论(0) 推荐(0)

279. 完全平方数 (JAVA)
摘要:给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 给你一个整数 n ,返回和为 n 的完全平方数的 最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、 阅读全文

posted @ 2021-04-06 23:06 joannae 阅读(629) 评论(0) 推荐(0)

239. 滑动窗口最大值 (JAVA)
摘要:给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 示例 1: 输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7 阅读全文

posted @ 2021-03-26 21:46 joannae 阅读(320) 评论(0) 推荐(0)

338. 比特位计数 (JAVA)
摘要:给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。 示例 1: 输入: 2输出: [0,1,1]示例 2: 输入: 5输出: [0,1,1,2,1,2]进阶: 给出时间复杂度为O(n*sizeof(integer))的 阅读全文

posted @ 2021-03-03 21:42 joannae 阅读(106) 评论(0) 推荐(0)

778. 水位上升的泳池中游泳 (JAVA)
摘要:在一个 N x N 的坐标方格 grid 中,每一个方格的值 grid[i][j] 表示在位置 (i,j) 的平台高度。 现在开始下雨了。当时间为 t 时,此时雨水导致水池中任意位置的水位为 t 。你可以从一个平台游向四周相邻的任意一个平台,但是前提是此时水位必须同时淹没这两个平台。假定你可以瞬间移 阅读全文

posted @ 2021-03-02 23:34 joannae 阅读(147) 评论(0) 推荐(0)

995. K 连续位的最小翻转次数 (JAVA)
摘要:在仅包含 0 和 1 的数组 A 中,一次 K 位翻转包括选择一个长度为 K 的(连续)子数组,同时将子数组中的每个 0 更改为 1,而每个 1 更改为 0。 返回所需的 K 位翻转的最小次数,以便数组没有值为 0 的元素。如果不可能,返回 -1。 示例 1: 输入:A = [0,1,0], K = 阅读全文

posted @ 2021-02-27 23:18 joannae 阅读(90) 评论(0) 推荐(0)

321. 拼接最大数 (JAVA)
摘要:给定长度分别为 m 和 n 的两个数组,其元素由 0-9 构成,表示两个自然数各位上的数字。现在从这两个数组中选出 k (k <= m + n) 个数字拼接成一个新的数,要求从同一个数组中取出的数字保持其在原数组中的相对顺序。 求满足该条件的最大数。结果返回一个表示该最大数的长度为 k 的数组。 说 阅读全文

posted @ 2020-12-16 01:30 joannae 阅读(275) 评论(0) 推荐(0)

222. 完全二叉树的节点个数 (JAVA)
摘要:给出一个完全二叉树,求出该树的节点个数。 说明: 完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。 示例: 输入: 1 / \ 2 3 / \ /4 阅读全文

posted @ 2020-10-14 23:21 joannae 阅读(192) 评论(0) 推荐(0)

209. 长度最小的子数组 (JAVA)
摘要:给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的 连续 子数组,并返回其长度。如果不存在符合条件的子数组,返回 0。 示例: 输入:s = 7, nums = [2,3,1,2,4,3]输出:2解释:子数组 [4,3] 是该条件下的长度最小的子数组。 思 阅读全文

posted @ 2020-10-14 21:53 joannae 阅读(174) 评论(0) 推荐(0)

1 2 3 4 5 下一页

导航