在线 OJ
文章平均质量分 58
在线刷题
村雨遥
CSDN 博客专家,专注但不仅限于 Java 技术领域的分享。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
程序员面试金典:02.02. 返回倒数第 k 个节点
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目面试题 02.02. 返回倒数第 k 个节点2. 描述实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。注意:本题相对原题稍作改动示例:输入: 1->2->3->4->5 和 k = 2输出: 4说明:给定的 k 保证是有效的。3. 实现方法3.1 方法 13.1.1 思路设有两个指针 fast, slow 指向 head;先将 fas原创 2020-08-09 15:57:23 · 535 阅读 · 0 评论 -
程序员面试金典:面试题 02.03. 删除中间节点
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目面试题 02.03. 删除中间节点2. 描述实现一种算法,删除单向链表中间的某个节点(即不是第一个或最后一个节点),假定你只能访问该节点。示例:输入: 单向链表 a->b->c->d->e->f中的节点 c结果: 不返回任何数据,但该链表变为 a->b->d->e->f3. 思路直接删除下一个结点。呈现出的表面结果为删除的当前节点,实际上删除的是下一个结点。4. 实现pu原创 2020-07-04 16:49:49 · 503 阅读 · 0 评论 -
华为机试:10. 字符个数统计
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目10. 字符个数统计2. 描述编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次输入abaca输出3输入描述:输入N个字符,字符在ACSII码范围内。输出描述:输出范围在(0~127)字符的个数。示例1输入abc输出33. 实现方法3.1 方法 13.1原创 2020-08-11 00:11:20 · 570 阅读 · 0 评论 -
华为机试:100.等差数列
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目100.等差数列2. 描述功能:等差数列 2,5,8,11,14。。。。输入:正整数 N>0N >0N>0输出:求等差数列前 N 项和返回:转换成功返回 0 ,非法输入与异常返回 -1本题为多组输入,请使用 while(cin>>)while(cin>>)while(cin>>) 等形式读取数据输入描述:输入一个正整数。输出描述:原创 2020-08-08 23:06:45 · 688 阅读 · 0 评论 -
华为机试:9. 提取不重复的整数
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目9. 提取不重复的整数2. 描述题目描述输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。输入描述:输入一个int型整数输出描述:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数示例1输入9876673输出376893. 实现方法3.1 方法 13.1.1 思路将数字转换为字符串;然后初始化一个列表,从右向左遍历字符串,然后原创 2020-08-10 23:48:56 · 537 阅读 · 0 评论 -
华为机试:108.求最小公倍数
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目108.求最小公倍数2. 描述正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。输入描述:输入两个正整数A和B。输出描述:输出A和B的最小公倍数。示例1输入5 7输出353. 实现方法3.1 方法 13.1.1 思路最小公倍数即能同时被数字m和数字n整除的最小整数,利用欧几里得公式进行求解,先算出最大公约数,然后原创 2020-08-08 23:03:48 · 682 阅读 · 0 评论 -
剑指 Offer:10- I. 斐波那契数列
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现3.2 方法 23.2.1 思路3.2.2 实现1. 题目剑指 Offer 10- I. 斐波那契数列2. 描述写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出原创 2020-07-25 23:53:36 · 472 阅读 · 0 评论 -
剑指 Offer:05. 替换空格
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 05. 替换空格2. 描述请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = “We are happy.”输出:“We%20are%20happy.”限制:0 <= s 的长度 <= 100003. 实现方法3.1 方法 13.1.1 思路遍历字符串,对字符串中的每个字符进行判断;若字符等于空格,则将字符串 re原创 2020-07-24 23:52:44 · 346 阅读 · 0 评论 -
剑指 Offer:04. 二维数组中的查找
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 04. 二维数组中的查找2. 描述在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[[1, 4, 7, 11, 15],[2, 5, 8, 12, 19],[3, 6, 9, 16原创 2020-08-12 21:10:38 · 544 阅读 · 0 评论 -
剑指 Offer:28. 对称的二叉树
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 28. 对称的二叉树2. 描述请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1/ \2 2/ \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1/ \2 2\ \原创 2020-07-25 23:50:32 · 553 阅读 · 0 评论 -
剑指 Offer:03. 数组中重复的数字
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 03. 数组中重复的数字2. 描述找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000原创 2020-07-24 23:48:40 · 398 阅读 · 0 评论 -
剑指 Offer:55 - I. 二叉树的深度
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 55 - I. 二叉树的深度2. 描述输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。例如:给定二叉树 [3,9,20,null,null,15,7],3/ \9 20/ \15 7返回它的最大深度 3 。提示:节点总数 <= 100003. 实现方法3.1 方法原创 2020-07-27 20:24:53 · 502 阅读 · 0 评论 -
剑指 Offer:32 - I. 从上到下打印二叉树
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 32 - I. 从上到下打印二叉树2. 描述从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回:[3,9,20,15,7]3. 实现方法3.1 方法 13.1.1 思路判断根节点是否为 nul原创 2020-07-27 21:23:09 · 223 阅读 · 0 评论 -
剑指 Offer:07. 重建二叉树
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 07. 重建二叉树2. 描述输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3/ \\9 20/ \15 7限制:0 <= 节点个数 <原创 2020-08-13 19:03:03 · 453 阅读 · 0 评论 -
剑指 Offer:15. 二进制中1的个数
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 15. 二进制中1的个数2. 描述请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001011 中,共原创 2020-07-25 23:47:12 · 543 阅读 · 0 评论 -
剑指 Offer:06. 从尾到头打印链表
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 06. 从尾到头打印链表2. 描述输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入: head = [1,3,2]输出: [2,3,1]限制:0 <= 链表长度 <= 100003. 实现方法3.1 方法 13.1.1 思路借助栈的特点,先进后出,我们只需要将链表的元素存入栈中,然后从栈中取出元素,此时取出的顺序就原创 2020-08-13 15:55:06 · 404 阅读 · 0 评论 -
剑指 Offer:09. 用两个栈实现队列
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 09. 用两个栈实现队列2. 描述用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例 1:输入:[“CQueue”,“appendTail”,“deleteHead”,“deleteHead”][[]原创 2020-08-14 12:11:18 · 496 阅读 · 0 评论 -
剑指 Offer:22. 链表中倒数第k个节点
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目剑指 Offer 22. 链表中倒数第k个节点2. 描述输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4-原创 2020-08-09 15:46:14 · 385 阅读 · 0 评论 -
剑指 Offer: 21. 调整数组顺序使奇数位于偶数前面
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现3.2 方法 23.2.1 思路3.2.2 实现1. 题目剑指 Offer 21. 调整数组顺序使奇数位于偶数前面2. 描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。示例:**输入:**nums = [1,2,3,4]输出:[1,3,2,4]注:[3,1,2,4] 也是正确的答案之一。提示:1 <= nums.len原创 2020-08-17 00:06:38 · 457 阅读 · 0 评论 -
LeetCode 训练场:1486. 数组异或操作
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目1486. 数组异或操作2. 描述给你两个整数,n 和 start 。数组 nums 定义为:nums[i] = start + 2*i(下标从 0 开始)且 n == nums.length 。请返回 nums 中所有元素按位异或(XOR)后得到的结果。示例 1:输入:n = 5, start = 0输出:8解释:数组 nums 为 [0, 2, 4, 6, 8],其中 (0 ^ 2 ^ 4 ^ 6 ^ 8) = 8 。原创 2020-06-28 10:21:54 · 494 阅读 · 0 评论 -
LeetCode 训练场:905. 按奇偶排序数组
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目905. 按奇偶排序数组2. 描述给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。你可以返回满足此条件的任何数组作为答案。示例:输入: [3,1,2,4]输出: [2,4,3,1]输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。3. 思路先声明一个数组 result 用来存放最终结果然后遍历数组两次,第一次将偶数放入 result 中,第二次原创 2020-07-01 10:57:18 · 256 阅读 · 0 评论 -
LeetCode 训练场:977. 有序数组的平方
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目977. 有序数组的平方2. 描述给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例 1:输入: [-4,-1,0,3,10]输出: [0,1,9,16,100]示例 2:输入: [-7,-3,2,3,11]输出: [4,9,9,49,121]3. 思路遍历数组,然后将数组元素的平方存入一个新的数组中,然后返回排序后的数组即可,主要操作是遍历(O(n)O(n)O(n))和排原创 2020-07-01 10:34:39 · 422 阅读 · 0 评论 -
LeetCode 训练场:145. 二叉树的后序遍历
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目145. 二叉树的后序遍历2. 描述给定一个二叉树,返回它的 后序 遍历。3. 思路按照后序遍历的思想,利用递归来实现很简单。4. 实现public List<Integer> postorderTraversal(TreeNode root) { List<Integer> list = new ArrayList<>(); postOrder(root, list);原创 2020-07-01 20:35:17 · 404 阅读 · 0 评论 -
LeetCode 训练场:589. N叉树的前序遍历
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目589. N叉树的前序遍历2. 描述给定一个 N 叉树,返回其节点值的前序遍历。例如,给定一个 3叉树 :返回其前序遍历: [1,3,5,6,2,4]。3. 实现方法3.1 方法 13.1.1 思路利用递归思想,先访问根节点,再遍历子节点;3.1.2 实现List<Integer> list = new ArrayList<>();public List原创 2020-08-09 22:26:50 · 561 阅读 · 0 评论 -
LeetCode 训练场:100. 相同的树
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目100. 相同的树2. 描述给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:示例 2:示例 3:3. 思路利用二叉树刷题递归遍历框架,先对根节点进行操作,然后再递归左右子节点即可。当两棵树的当前节点都为 null 时返回 true当其中一个为 null 另一个不为 null 时返回 false当两个都不为空但是值不相等时,返回原创 2020-06-26 12:05:28 · 428 阅读 · 1 评论 -
LeetCode 训练场:1720. 解码异或后的数组
题目1720. 解码异或后的数组难度:简单描述未知 整数数组 arr 由 n 个非负整数组成。经编码后变为长度为 n - 1 的另一个整数数组 encoded ,其中 encoded[i] = arr[i] XOR arr[i + 1] 。例如,arr = [1,0,2,1] 经编码后得到 encoded = [1,2,3] 。给你编码后的数组 encoded 和原数组 arr 的第一个元素 first(arr[0])。请解码返回原数组 arr 。可以证明答案存在并且是唯一的。示例 1原创 2021-05-06 22:26:21 · 379 阅读 · 0 评论 -
LeetCode 训练场:242. 有效的字母异位词
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目242. 有效的字母异位词2. 描述给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true示例 2:输入: s = “rat”, t = “car”输出: false3. 思路首先长度对比,不同则不是其次用一个长为 26 的数组来表示各个字符出现的次数将出现在字符串 s 里的字符个数加 1出现在字符串原创 2020-06-29 16:45:22 · 3819 阅读 · 0 评论 -
LeetCode 训练场:112. 路径总和
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目112. 路径总和2. 描述难度简单395给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。说明: 叶子节点是指没有子节点的节点。示例:给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 1原创 2020-08-09 10:47:49 · 399 阅读 · 0 评论 -
LeetCode 训练场:164. 最大间距
文章目录题目题目描述题解分析代码题目164. 最大间距难度:困难题目描述给定一个无序的数组,找出数组在排序之后,相邻元素之间最大的差值。如果数组元素个数小于 2,则返回 0。示例 1:输入: [3,6,9,1]输出: 3解释: 排序后的数组是 [1,3,6,9], 其中相邻元素 (3,6) 和 (6,9) 之间都存在最大差值 3。示例 2:输入: [10]输出: 0解释: 数组元素个数小于 2,因此返回 0。说明:你可以假设数组中所有元素都是非负整数,且原创 2020-11-26 14:58:30 · 455 阅读 · 0 评论 -
LeetCode 训练场:485. 最大连续1的个数
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目485. 最大连续1的个数2. 描述给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含 0 和1。输入数组的长度是正整数,且不超过 10,000。3. 实现方法3.1 方法 13.1.1 思路暴力遍历,详情见实现,主要进行遍历操作原创 2020-08-09 12:17:24 · 390 阅读 · 0 评论 -
LeetCode 训练场:62. 不同路径
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目62. 不同路径2. 描述一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?例如,上图是一个7 x 3 的网格。有多少可能的路径?示例 1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可原创 2020-09-07 23:19:03 · 416 阅读 · 0 评论 -
LeetCode 训练场:35. 搜索插入位置
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目35. 搜索插入位置2. 描述给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0输出: 03. 思路首先对目标值进行原创 2020-07-06 15:53:36 · 395 阅读 · 0 评论 -
LeetCode 训练场:27. 移除元素
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目27. 移除元素2. 描述给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums原创 2020-08-09 11:59:39 · 391 阅读 · 0 评论 -
LeetCode 训练场:1137. 第 N 个泰波那契数
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现3.2 方法 23.2.1 思路3.2.2 实现3.3 方法 33.3.1 思路3.3.2 实现1. 题目1137. 第 N 个泰波那契数2. 描述泰波那契序列 Tn 定义如下:T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2给你整数 n,请返回第 n 个泰波那契数 Tn 的值。示例 1:输入:n = 4输出:4解释原创 2020-07-31 15:23:32 · 467 阅读 · 0 评论 -
LeetCode 训练场:64. 最小路径和
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目64. 最小路径和2. 描述给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例:输入:[[1,3,1],[1,5,1],[4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。3. 实现方法3.1 方法 13.1.1 思路动态规划,分三步:要从左上角走原创 2020-09-08 09:22:48 · 437 阅读 · 0 评论 -
LeetCode 训练场:1470. 重新排列数组
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目1470. 重新排列数组2. 描述给你一个数组 nums ,数组中有 2n 个元素,按 [x1,x2,…,xn,y1,y2,…,yn] 的格式排列。请你将数组按 [x1,y1,x2,y2,…,xn,yn] 格式重新排列,返回重排后的数组。3. 思路只需要新建一个 2∗n2*n2∗n 长度的数组用于存放最终结果,同时用一个整数来作为当前结果的位置即可,然后就是讲数组进行重排列即可,此时主要操作就是进行遍历,时间复杂度为 O(n)O(原创 2020-07-01 08:19:00 · 607 阅读 · 0 评论 -
LeetCode 训练场:1480. 一维数组的动态和
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目1480. 一维数组的动态和2. 描述给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。示例 1:**输入:**nums = [1,2,3,4]输出:[1,3,6,10]**解释:**动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:**输入:**nums = [1,1,1,1,1]输出:原创 2020-06-27 20:39:26 · 496 阅读 · 0 评论 -
LeetCode 训练场:240. 搜索二维矩阵 II
文章目录1. 题目2. 描述3. 实现方法3.1 方法 13.1.1 思路3.1.2 实现1. 题目240. 搜索二维矩阵 II2. 描述编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例:现有矩阵 matrix 如下:[[1, 4, 7, 11, 15],[2, 5, 8, 12, 19],[3, 6, 9, 16, 22],[10, 13,原创 2020-08-12 21:30:51 · 478 阅读 · 0 评论 -
LeetCode 训练场:283. 移动零
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目移动零2. 描述给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]3. 思路声明一个 count 用于计数数组中不为 0 的元素个数然后遍历数组,将不为 0 的元素存入数组前 count 位然后将剩下的 nums.length - count 位置为 0此时主要进行遍历操作,时间复杂度为 O(n)O(原创 2020-07-01 11:30:07 · 3806 阅读 · 0 评论 -
LeetCode 训练场:1431. 拥有最多糖果的孩子
文章目录1. 题目2. 描述3. 思路4. 实现1. 题目1431. 拥有最多糖果的孩子2. 描述给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。示例 1:输入:candies = [2,3,5,1,3], extraCandies = 3输原创 2020-06-28 15:59:02 · 3477 阅读 · 0 评论
分享