
LeetCode
SDRAG0N
这个作者很懒,什么都没留下…
展开
-
给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。
刷题小能手之数组篇(1)力扣链接:https://leetcode-cn.com/problems/remove-element/题目:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1)O(1)O(1) 额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1: 给定 nums = [3,2,2,3], val = 3, 函数应该返回新的长度 2,原创 2022-03-08 20:49:07 · 2246 阅读 · 0 评论 -
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
刷题小能手之数组篇(2)力扣链接给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例 2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 ..原创 2022-03-08 20:55:44 · 2637 阅读 · 0 评论 -
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。
刷题小能手之数组篇(3)package arrayAlgorithm;/*** * 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 * * 如果反转后整数超过 32 位的有符号整数的范围[−2^31,2^31− 1] ,就返回 0。 * * 假设环境不允许存储 64 位整数(有符号或无符号)。 * * 示例 1: * * 输入:x = 123 * 输出:321 * 示例 2: * * 输入:x = -123 * 输出:-321 * 示例 3:原创 2022-03-08 20:58:18 · 834 阅读 · 0 评论 -
找出长度最小的连续子数组
刷题小能手之数组篇(4)力扣链接package arrayAlgorithm;/** * 给定一个含有 n 个正整数的数组和一个正整数 target 。 * <p> * 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl+1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 */public class MinimumLengthSubArray { public static原创 2022-03-08 21:00:42 · 404 阅读 · 0 评论 -
山峰数组的顶部
刷题小能手之数组篇(5)符合下列属性的数组 arr 称为 山峰数组(山脉数组) :arr.length >= 3存在 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] < … arr[i原创 2022-03-08 21:04:19 · 170 阅读 · 0 评论 -
螺旋矩阵 II
刷题小能手之数组篇(6)给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。示例 1:输入:n = 3输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2:输入:n = 1输出:[[1]]提示:1 <= n <= 20package arrayAlgorithm;import com.sun.org.apache.bcel.internal.generic.SWITCH;/**原创 2022-03-08 21:09:08 · 108 阅读 · 0 评论 -
有序数组的平方
刷题小能手之数组篇(7)力扣给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]示例 2:输入:nums = [-7,-3,2,3,11]输出:[4,9,9,49,121]提示:1原创 2022-03-08 21:11:58 · 129 阅读 · 0 评论 -
两数之和:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。
刷题小能手之数组篇(8)力扣给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。package arrayAlgorithm;public class TwoSum { public static int[] twoSum(int[] nums, int target) {原创 2022-03-08 21:14:28 · 676 阅读 · 0 评论 -
JAVA翻转链表
力扣给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。示例 1:输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2:输入:head = [1,2]输出:[2,1]示例 3:输入:head = []输出:[]提示:链表中节点的数目范围是 [0, 5000]-5000 <= Node.val <= 5000进阶:链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题? public ListNode reverse原创 2022-03-15 20:23:57 · 1113 阅读 · 0 评论 -
移除链表元素
力扣给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。示例 1:输入:head = [1,2,6,3,4,5,6], val = 6输出:[1,2,3,4,5]示例 2:输入:head = [], val = 1输出:[]示例 3:输入:head = [7,7,7,7], val = 7输出:[]提示:列表中的节点数目在范围 [0, 104] 内1 <= Node.val <= 5原创 2022-03-15 20:20:58 · 526 阅读 · 0 评论 -
java设计链表的实现
力扣链接设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。在链表类中实现这些功能:get(index):获取链表中第 index 个节点的值。如果索引无效,则返回-1。addAtHead(val):在链表的第一个元素之前添加一个值为 val 的节点。插入后,新节点将成为原创 2022-03-15 20:17:50 · 259 阅读 · 0 评论