上一页 1 2 3 4 5 6 7 ··· 9 下一页
摘要: 题目 给你单链表的头指针 head 和两个整数 left 和 right ,其中 left ⇐ right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 示例 1: 输入:head = [1,2,3,4,5], left = 2, right = 4 输出:[1 阅读全文
posted @ 2022-03-09 20:23 脱线森林` 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数。 (出现频率最高的元素) 假定 BST 有如下定义: 结点左子树中所含结点的值小于等于当前结点的值 结点右子树中所含结点的值大于等于当前结点的值 左子树和右子树都是二叉搜索树 例如:给定 BST [1,null,2,2], 1 阅读全文
posted @ 2021-11-30 13:04 脱线森林` 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 题目 反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。 分析与题解 双指针法 如果再定义一个新的链表,实现链表元素的反转,其实这是对内存空间的浪费。其实只需要改变链表的next指针的指向,直 阅读全文
posted @ 2021-01-01 19:35 脱线森林` 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 题目 设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。 在链表类 阅读全文
posted @ 2021-01-01 19:09 脱线森林` 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 题目 删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 分析与题解 区分头结点 直接使用给定的头结点进行节点的删除。此时需要对头结点跟其他节点的删除进行分类讨论。 对于首节点的情况,我们先保存首节 阅读全文
posted @ 2021-01-01 18:50 脱线森林` 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的 连续 子数组,并返回其长度。如果不存在符合条件的子数组,返回 0。 示例: 输入:s = 7, nums = [2,3,1,2,4,3] 输出:2 解释:子数组 [4,3] 是该条件下的长度最小的子 阅读全文
posted @ 2020-12-30 16:59 脱线森林` 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题目 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并原地修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = [3 阅读全文
posted @ 2020-12-30 16:42 脱线森林` 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 分析与题解 本题不涉及算法,只是模拟赋值的过程,十分考验对代码的观察能力。 模拟顺 阅读全文
posted @ 2020-12-30 16:13 脱线森林` 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5 输出: 2 示例 2: 输入: [1,3,5,6], 2 输出: 1 示例 3: 输入: [1, 阅读全文
posted @ 2020-12-30 11:28 脱线森林` 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 题目 给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。 示例 1: 输入: amount = 5, coins = [1, 2, 5] 输出: 4 解释: 有四种方式可以凑成总金额: 5=5 5=2+2+1 5=2+1+1+1 5=1+1+1+ 阅读全文
posted @ 2020-12-17 21:07 脱线森林` 阅读(166) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 9 下一页