10 2021 档案

摘要:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 1: 输入:s = ["h","e","l","l","o"] 输出:["o","l","l","e","h" 阅读全文
posted @ 2021-10-31 21:32 网抑云黑胶SVIP用户 阅读(51) 评论(0) 推荐(0)
摘要:给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。 示例: 输入:"Let's take LeetCode contest" 输出:"s'teL ekat edoCteeL tsetnoc" 提示: 在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的 阅读全文
posted @ 2021-10-31 21:19 网抑云黑胶SVIP用户 阅读(48) 评论(0) 推荐(0)
摘要:给定一个已按照 非递减顺序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。 函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 1 开始计数 ,所以答案数组应当满足 1 ⇐ answer[0] < answer[1 阅读全文
posted @ 2021-10-30 18:48 网抑云黑胶SVIP用户 阅读(72) 评论(0) 推荐(0)
摘要:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 作者:力扣 (Le 阅读全文
posted @ 2021-10-27 22:42 网抑云黑胶SVIP用户 阅读(49) 评论(0) 推荐(0)
摘要:给你两个数组,arr1 和 arr2, arr2 中的元素各不相同 arr2 中的每个元素都出现在 arr1 中 对 arr1 中的元素进行排序,使 arr1 中项的相对顺序和 arr2 中的相对顺序相同。未在 arr2 中出现过的元素需要按照升序放在 arr1 的末尾。 示例: 输入:arr1 = 阅读全文
posted @ 2021-10-27 21:27 网抑云黑胶SVIP用户 阅读(118) 评论(0) 推荐(0)
摘要:给定整数 n 和 k,找到 1 到 n 中字典序第 k 小的数字。 注意:1 ≤ k ≤ n ≤ 109。 示例 : 输入: n: 13 k: 2 输出: 10 解释: 字典序的排列是 [1, 10, 11, 12, 13, 2, 3, 4, 5, 6, 7, 8, 9],所以第二小的数字是 10。 阅读全文
posted @ 2021-10-26 22:40 网抑云黑胶SVIP用户 阅读(50) 评论(0) 推荐(0)
摘要:给你一个字符串 s ,请你找到 s 中两个 不相交回文子序列 ,使得它们长度的 乘积最大 。两个子序列在原字符串中如果没有任何相同下标的字符,则它们是 不相交 的。 请你返回两个回文子序列长度可以达到的 最大乘积 。 子序列 指的是从原字符串中删除若干个字符(可以一个也不删除)后,剩余字符不改变顺序 阅读全文
posted @ 2021-10-25 13:48 网抑云黑胶SVIP用户 阅读(69) 评论(0) 推荐(0)
摘要:给你一个整数 n,请你每隔三位添加点(即 "." 符号)作为千位分隔符,并将结果以字符串格式返回。 示例 1: 输入:n = 987 输出:"987" 示例 2: 输入:n = 1234 输出:"1.234" 示例 3: 输入:n = 123456789 输出:"123.456.789" 示例 4: 阅读全文
posted @ 2021-10-24 13:30 网抑云黑胶SVIP用户 阅读(191) 评论(0) 推荐(0)
摘要:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/move-zeroes 阅读全文
posted @ 2021-10-24 11:57 网抑云黑胶SVIP用户 阅读(57) 评论(0) 推荐(0)
摘要:给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 进阶: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。 你可以使用空间复杂度为 O(1) 的 原地 算法解决这个问题吗? 示例 1: 输入: nums = [1,2,3,4,5,6,7], k = 3 输出: 阅读全文
posted @ 2021-10-24 11:07 网抑云黑胶SVIP用户 阅读(89) 评论(0) 推荐(0)
摘要:给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 示例 1: 输入:nums = [-4,-1,0,3,10] 输出:[0,1,9,16,100] 解释:平方后,数组变为 [16,1,0,9,100] 排序后,数组变为 [0,1,9, 阅读全文
posted @ 2021-10-23 17:38 网抑云黑胶SVIP用户 阅读(75) 评论(0) 推荐(0)
摘要:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums = [1,3,5,6], target = 5 输出: 2 示例 2: 输入: nums = [ 阅读全文
posted @ 2021-10-23 17:10 网抑云黑胶SVIP用户 阅读(52) 评论(0) 推荐(0)
摘要:你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。 假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。 你可以通过调用 bool 阅读全文
posted @ 2021-10-14 18:42 网抑云黑胶SVIP用户 阅读(47) 评论(0) 推荐(0)
摘要:给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 来源:力扣(Le 阅读全文
posted @ 2021-10-14 18:01 网抑云黑胶SVIP用户 阅读(67) 评论(0) 推荐(0)
摘要:给你两个整数 memory1 和 memory2 分别表示两个内存条剩余可用内存的位数。现在有一个程序每秒递增的速度消耗着内存。 在第 i 秒(秒数从 1 开始),有 i 位内存被分配到 剩余内存较多 的内存条(如果两者一样多,则分配到第一个内存条)。如果两者剩余内存都不足 i 位,那么程序将 意外 阅读全文
posted @ 2021-10-13 19:45 网抑云黑胶SVIP用户 阅读(42) 评论(0) 推荐(0)
摘要:Trie(发音类似 "try")或者说 前缀树 是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补完和拼写检查。 请你实现 Trie 类: Trie() 初始化前缀树对象。 void insert(String word) 向前缀树中插入字符串 w 阅读全文
posted @ 2021-10-12 18:12 网抑云黑胶SVIP用户 阅读(103) 评论(0) 推荐(0)
摘要:给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 示例 1: 输入: nums = [-1,0,3,5,9,12], target = 9 输出: 4 解释: 9 出现在 num 阅读全文
posted @ 2021-10-11 23:59 网抑云黑胶SVIP用户 阅读(49) 评论(0) 推荐(0)
摘要:存在一个长度为 n 的数组 arr ,其中 arr[i] = (2 * i) + 1 ( 0 ⇐ i < n )。 一次操作中,你可以选出两个下标,记作 x 和 y ( 0 ⇐ x, y < n )并使 arr[x] 减去 1 、arr[y] 加上 1 (即 arr[x] -=1 且 arr[y] 阅读全文
posted @ 2021-10-11 23:26 网抑云黑胶SVIP用户 阅读(185) 评论(0) 推荐(0)
摘要:给你一棵根为 root 的二叉树,请你返回二叉树中好节点的数目。 「好节点」X 定义为:从根到该节点 X 所经过的节点中,没有任何节点的值大于 X 的值。 示例 1: 输入:root = [3,1,4,3,null,1,5] 输出:4 解释:图中蓝色节点为好节点。 根节点 (3) 永远是个好节点。 阅读全文
posted @ 2021-10-10 20:03 网抑云黑胶SVIP用户 阅读(83) 评论(0) 推荐(0)
摘要:给你一个头结点为 head 的单链表和一个整数 k ,请你设计一个算法将链表分隔为 k 个连续的部分。 每部分的长度应该尽可能的相等:任意两部分的长度差距不能超过 1 。这可能会导致有些部分为 null 。 这 k 个部分应该按照在链表中出现的顺序排列,并且排在前面的部分的长度应该大于或等于排在后面 阅读全文
posted @ 2021-10-09 21:43 网抑云黑胶SVIP用户 阅读(62) 评论(0) 推荐(0)