![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Leetcode练习
Dust.
这个作者很懒,什么都没留下…
展开
-
Leetcode 1001网格照明
在大小为 n x n 的网格 grid 上,每个单元格都有一盏灯,最初灯都处于 关闭 状态。给你一个由灯的位置组成的二维数组 lamps ,其中 lamps[i] = [rowi, coli] 表示 打开 位于 grid[rowi][coli] 的灯。即便同一盏灯可能在 lamps 中多次列出,不会影响这盏灯处于 打开 状态。当一盏灯处于打开状态,它将会照亮 自身所在单元格 以及同一 行 、同一 列 和两条 对角线 上的 所有其他单元格 。另给你一个二维数组 queries ,其中 queries[j原创 2022-02-08 14:11:54 · 7281 阅读 · 0 评论 -
Leetcode350 两个数组的交集II
给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑输出结果的顺序。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[4,9]提示:1 <= nums1.length, nums2.length <原创 2022-01-21 14:52:33 · 58 阅读 · 0 评论 -
Leetcode19 删除链表的倒数第N个结点
删除链表的倒数第 N 个结点给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]提示:链表中结点的数目为 sz1 <= sz <= 300 <= Node.val <= 1001 <= n <= sz进阶:你能.原创 2022-01-14 12:41:32 · 90 阅读 · 0 评论 -
Leetcode 2两数相加
题目:2. 两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,9,9原创 2022-01-13 12:20:30 · 50 阅读 · 0 评论 -
最大子数组和
最大子数组和给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。使用动态规划求解首先我们要明确一点,如果一个子序列和加了一个负数,则必定导致和减小。但在正向思维中这个判断不能使用,因为有可能在负数后面加了一个更大的正数。但我们可以用反向思维,定义一个状态dp[i]为以nums[i]结尾的最大子序列和,反向思考,若dp[i]为负数,则说明前面的子序列最大的也是负数,没必要继续往后加了,此时把dp[i]状态转为从.原创 2021-12-03 18:49:29 · 60 阅读 · 0 评论 -
Leetcode 26-27,双指针 (删除数组相同元素&移除元素)
26. 删除有序数组中的重复项给你一个有序数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。定义两个指针,一个slow一个fast,分别指向有效数组和整个数组。意为slow是要输出的数组的长度,而fast用于对原数组遍历到底。用fast对数组进行遍历,两相邻元素不相同,则将fast指向的元素赋给slow指向的元素,slow指针向前走一个元素。若...原创 2021-10-31 19:40:37 · 103 阅读 · 0 评论