144. 二叉树的前序遍历

给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 1: **输入:**root = [1,null,2,3] 输出:[1,2,3] 解释: 示例 2: **输入:**root = [1,2,3,4,5,null,8,null,null,6,7,9] 输出:[1...

2025-04-08

101. 对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: **输入:**root = [1,2,2,3,4,4,3]**输出:**true 示例 2: **输入:**root = [1,2,2,null,3,null,3]**输出:**false 提示: 树中节...

2025-04-08

94. 二叉树的中序遍历

给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: **输入:**root = [1,null,2,3]输出:[1,3,2] 示例 2: **输入:**root = []输出:[] 示例 3: **输入:**root = [1]输出:[1] 提...

2025-04-08

167. 两数之和 II - 输入有序数组

给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列  ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是 numbers[index1] 和 numbers[index2] ,则 1 <= index1 < index2 ...

2025-04-05

88. 合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 **注意:**最终,合并后数组不应由函数返回,而是存储在数组 n...

2025-04-05

面试题 02.07. 链表相交

给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交**:** 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 示例 1: **输入...

2025-04-05

707. 设计链表

**你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。 如果是双向链表,则还需要属性 prev 以指示链表中的上一个节点。假设链表中的所有节点下标从 0 开始。 实...

2025-04-05

206. 反转链表

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: **输入:**head = [1,2,3,4,5]输出:[5,4,3,2,1] 示例 2: **输入:**head = [1,2]输出:[2,1] 示例 3: **输入:**head =...

2025-04-05

203. 移除链表元素

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 示例 1: **输入:**head = [1,2,6,3,4,5,6], val = 6输出:[1,2,3,4,5] 示例 2: **输...

2025-04-05

142. 环形链表 II

给定一个链表的头节点  head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 po...

2025-04-05
1 2 3 4