随笔 - 112  文章 - 0  评论 - 0  阅读 - 1426

随笔分类 -  LeetCode

上一页 1 2 3 4 5 6 下一页
二叉树的层序遍历(队列)
摘要:给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 示例 2: 输入:root = [1] 输出:[[1]] 示例 3: 输入 阅读全文
posted @ 2024-12-24 17:15 _月生 阅读(9) 评论(0) 推荐(0) 编辑
二叉树的直径(递归)
摘要:给你一棵二叉树的根节点,返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的 长度 由它们之间边数表示。 示例 1: 输入:root = [1,2,3,4,5] 输出:3 解释:3 ,取路径 [4,2,1 阅读全文
posted @ 2024-12-24 17:01 _月生 阅读(14) 评论(0) 推荐(0) 编辑
对称二叉树(递归)
摘要:给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2: 输入:root = [1,2,2,null,3,null,3] 输出:false /** * Definition for a binary tree 阅读全文
posted @ 2024-12-23 20:31 _月生 阅读(3) 评论(0) 推荐(0) 编辑
翻转二叉树(递归)
摘要:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 示例 2: 输入:root = [2,1,3] 输出:[2,3,1] 示例 3: 输入:root = [] 输出:[] /** 阅读全文
posted @ 2024-12-23 20:13 _月生 阅读(3) 评论(0) 推荐(0) 编辑
二叉树的最大深度(递归)
摘要:给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:3 示例 2: 输入:root = [1,null,2] 输出:2 /** * Definitio 阅读全文
posted @ 2024-12-23 19:12 _月生 阅读(12) 评论(0) 推荐(0) 编辑
二叉树的中序遍历(递归/栈)
摘要:给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root = [1,null,2,3] 输出:[1,3,2] 示例 2: 输入:root = [] 输出:[] 示例 3: 输入:root = [1] 输出:[1] 方法1:递归 /** * Definition fo 阅读全文
posted @ 2024-12-23 19:03 _月生 阅读(12) 评论(0) 推荐(0) 编辑
LRU 缓存(哈希表+双向链表)
摘要:请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否 阅读全文
posted @ 2024-12-23 18:36 _月生 阅读(20) 评论(0) 推荐(0) 编辑
合并 K 个升序链表(归并排序)
摘要:给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [ 1->4->5, 1->3->4, 2->6 ] 阅读全文
posted @ 2024-12-23 18:00 _月生 阅读(11) 评论(0) 推荐(0) 编辑
排序链表(归并排序)
摘要:给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 示例 1: 输入:head = [4,2,1,3] 输出:[1,2,3,4] 示例 2: 输入:head = [-1,5,3,4,0] 输出:[-1,0,3,4,5] 示例 3: 输入:head = [] 输出:[] 方法一 阅读全文
posted @ 2024-12-22 14:31 _月生 阅读(11) 评论(0) 推荐(0) 编辑
随机链表的复制(哈希表)
摘要:给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的 next 指针和 random 指针也都应指向复制链表中 阅读全文
posted @ 2024-12-22 13:51 _月生 阅读(11) 评论(0) 推荐(0) 编辑
K 个一组翻转链表(逆置链表+递归)
摘要:给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。 示例 1: 输入:head = [1,2 阅读全文
posted @ 2024-12-22 13:33 _月生 阅读(7) 评论(0) 推荐(0) 编辑
两两交换链表中的节点(迭代)
摘要:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即只能进行节点交换)。 示例 1: 输入:head = [1,2,3,4] 输出:[2,1,4,3] 示例 2: 输入:head = [] 输出:[] 示例 3: 输入:head = [1] 阅读全文
posted @ 2024-12-22 12:16 _月生 阅读(4) 评论(0) 推荐(0) 编辑
两数相加(迭代)
摘要:给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例 1: 输入:l1 = [2,4,3], l2 = [5,6, 阅读全文
posted @ 2024-12-21 14:26 _月生 阅读(10) 评论(0) 推荐(0) 编辑
合并两个有序链表(迭代)
摘要:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 = [], l2 = [] 输出:[] 示例 3: 输入:l1 = [] 阅读全文
posted @ 2024-12-21 12:46 _月生 阅读(15) 评论(0) 推荐(0) 编辑
环形链表 II(快慢指针)
摘要:给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 阅读全文
posted @ 2024-12-21 12:01 _月生 阅读(4) 评论(0) 推荐(0) 编辑
环形链表(快慢指针)
摘要:给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的 阅读全文
posted @ 2024-12-21 11:39 _月生 阅读(7) 评论(0) 推荐(0) 编辑
回文链表(栈)
摘要:给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 示例 1: 输入:head = [1,2,2,1] 输出:true 示例 2: 输入:head = [1,2] 输出:false 思路:使用栈来存储节点值,然后开始比对 /** * 阅读全文
posted @ 2024-12-21 11:20 _月生 阅读(4) 评论(0) 推荐(0) 编辑
搜索二维矩阵 II(二分搜索)
摘要:编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例 1: 输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10 阅读全文
posted @ 2024-12-20 22:51 _月生 阅读(5) 评论(0) 推荐(0) 编辑
相交链表
摘要:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 /** * Definit 阅读全文
posted @ 2024-12-20 22:47 _月生 阅读(7) 评论(0) 推荐(0) 编辑
旋转图像
摘要:给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[[7,4 阅读全文
posted @ 2024-12-20 21:57 _月生 阅读(6) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 下一页
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示