LeetCode
艾希逐月
帘外芭蕉惹骤雨门环惹铜绿
展开
-
LeetCode 题解 - 02.Add Two Numbers
一. 题目要求You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked list.You may assume the two numbe原创 2020-08-15 09:47:27 · 212 阅读 · 0 评论 -
LeetCode 题解 - 01.Two Sum
Leetcode 第 01. Two Sum 题,题目难度 Easy。一. 题目要求Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the same element twice原创 2020-08-14 16:55:34 · 193 阅读 · 0 评论 -
LeetCode 题解-513.找树左下角的值
LeetCode 第 513. Find Bottom Left Tree Value题,题目难度 Medium。一. 题目要求给定一个二叉树,在树的最后一行找到最左边的值。示例 1:输入: 2 / \ 1 3输出:1示例 2:输入: 1 / \ 2 3 / / \ 4 5 6 / 7输出:7注意: 可以假设树(即给定的根节点)不为 NULL。原创 2020-06-01 10:57:37 · 211 阅读 · 0 评论 -
LeetCode 题解 - 102. 二叉树的层序遍历
LeetCode 第 102. Binary Tree Level Order Traversal 题,题目难度 Medium,一. 题目要求给定一个二叉树,返回其按层序遍历得到的节点值。 (即逐层地,从左到右访问所有节点)。示例:二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]]二. 解题思路 & 代码实现一道原创 2020-05-25 21:33:01 · 189 阅读 · 0 评论 -
LeetCode 题解 - 92. 反转链表 II
Leetcode 第 92. Reverse Linked List II 题,题目难度 Medium。一. 题目要求反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤ m ≤ n ≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL本题是 206.反转链表 的进阶版,要求反转指定范围内的部分链表。实现思路如下:找到索原创 2020-05-25 16:10:44 · 335 阅读 · 0 评论 -
LeetCode 题解 - 82. 删除排序链表中的重复元素 II
Leetcode 第 82. Remove Duplicates from Sorted List II 题,题目难度 Medium。一. 题目要求给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中没有重复出现的数字。示例 1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例 2:输入: 1->1->1->2->3输出: 2->3二. 解题思路 & 代码实现和原创 2020-05-25 11:43:57 · 309 阅读 · 0 评论 -
LeetCode 题解 - 83.删除排序链表中的重复元素
Leetcode 第 83. Remove Duplicates from Sorted List 题,题目难度 Easy。一.题目要求给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3二. 解题思路 & 代码基本思路就是遍历整个链表,然后对每一个 Node 的 value 进行判断。解法 1原创 2020-05-24 20:08:47 · 183 阅读 · 0 评论 -
LeetCode 题解 -173.二叉搜索树迭代器
Leetcode 第 173. Binary Search Tree Iterator 题,题目难度 Medium。一. 题目要求实现一个二叉搜索树迭代器。你将使用二叉搜索树的根节点初始化迭代器。调用 next() 将返回二叉搜索树中的下一个最小的数。示例:BSTIterator iterator = new BSTIterator(root);iterator.next(); // 返回 3iterator.next(); // 返回 7iterator.hasNext()原创 2020-05-22 08:04:28 · 231 阅读 · 0 评论 -
LeetCode 题解 -100.相同的树
LeetCode 100.Same Tree 题,难度为 East。一. 题目要求给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:输入: 1 1原创 2020-05-21 18:43:28 · 191 阅读 · 0 评论 -
LeetCode 题解 - 337. House Robber III
title: LeetCode-337. House Robber III-简记date: 2019-07-23tags: [“LeetCode”, “动态规划”]categories: [“LeetCode”]LeetCode 第 337. House Robber III,题目难度 Medium。一. 题目要求题目概要如下:在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为“根”。 除了“根”之外,每栋房子有且只有一个“父“房子与之.原创 2020-05-19 19:11:56 · 282 阅读 · 0 评论 -
LeetCode 题解 - 213. House Robber II
LeetCode 第 213. House Robber II,题目难度 Medium。一. 题目要求你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都围成一圈,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [2,3,2]输出: 3解释: 你不能先偷原创 2020-05-19 19:11:16 · 312 阅读 · 0 评论 -
LeetCode 题解 -198.House Robber
LeetCode 第 198. House Robber(打家劫舍),题目难度 Easy。一. 题目要求你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1]输出: 4解释: 偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3原创 2020-05-13 16:53:47 · 285 阅读 · 0 评论 -
LeetCode 题解 - 206.反转链表
今天做 LeetCode LeetCode 解题报告-206.反转链表,难度为 Easy。一. 题目要求反转一个单向链表例子Input: 1->2->3->4->5->NULLOutput: 5->4->3->2->1->NULL二. 解题思路 & 代码解题的关键也是理清楚每次反转的节点指针变化,每次反转涉及到三...原创 2020-04-27 21:58:53 · 300 阅读 · 0 评论 -
LeetCode 题解 - 24.两两交换链表中的节点
今天做 LeetCode 24.两两交换链表中的节点,难度为 Medium。一. 题目要求给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。示例:Given 1->2->3->4, you should return the list as 2->1->4->3.二. 解题思路 & 代码这道题难点在于搞清楚反转过程中节点指针的变化...原创 2020-04-25 10:02:17 · 213 阅读 · 0 评论 -
LeetCode 题解 - 23.合并 K 个有序链表
今天做 LeetCode 23. 合并 K 个有序链表,难度为 Hard。一. 题目要求本题算是 21. 合并两个有序链表 的进阶题目,21 题给的是两个链表,本题给的是多个链表进行合并。例子Input:[1->4->5,1->3->4,2->6]Output: 1->1->2->3->4->4->5->...原创 2020-04-23 06:45:32 · 312 阅读 · 0 评论 -
LeetCode 题解 - 21.合并两个有序链表
今天做 LeetCode 21. 合并两个有序链表,题目难度为 Easy。一. 题目要求给定两个有序链表,合并成一个有序链表。例子输入: 1->2->4, 1->3->4输出: 1->1->2->3->4->4二. 解题思路 & 代码要将两个链表合并,遍历操作是肯定需要的,同时链表必须是有序链表,因此在遍历的过程中需...原创 2020-04-22 12:20:03 · 187 阅读 · 0 评论 -
LeetCode 题解 -142.环形链表 Ⅱ
今天做 LeetCode 142. 环形链表 Ⅱ ,难度为 Medium。一. 题目要求这是 141.环形链表 的进阶题目,要求给定一个链表,判断该链表是是否有环,如果有环,则找出尾节点指向的那个节点二. 解题思路 & 代码解法一:遍历 & 判重这道题目需要我们找出尾节点所指向的节点,尾节点指向的节点在遍历过程中会首先出现两次,因此首先想到的方式就是从头遍历,然后判断...原创 2020-04-21 15:12:40 · 282 阅读 · 0 评论 -
LeetCode 题解 - 141.环形链表
今天做 LeetCode 第 141. 环形链表题目,难度为 Easy。一. 题目要求给定一个链表,判断该链表是是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。示例1输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部...原创 2020-04-20 18:10:43 · 181 阅读 · 0 评论