LeetCode
CptSwift
这个作者很懒,什么都没留下…
展开
-
LeetCode题库解答与分析——#70. 爬楼梯ClimbingStairs
#70. 爬楼梯 Climbing Stairs你正在爬楼梯。需要 n 步你才能到达顶部。每次你可以爬 1 或 2 个台阶。你有多少种不同的方式可以爬到楼顶呢?You are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1 or 2 steps. In how ...原创 2018-03-17 17:46:14 · 218 阅读 · 0 评论 -
LeetCode题库解答与分析——#139. 单词拆分WordBreak
给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,确定 s 是否可以被空格分割为一个或多个在字典里出现的单词。你可以假设字典中无重复的单词。例如,给出s = "leetcode",dict = ["leet", "code"]。返回 true 因为 "leetcode" 可以被切分成 "leet code"。Given a non-empty string s and a d...原创 2018-03-24 13:33:43 · 1432 阅读 · 0 评论 -
LeetCode题库解答与分析——#152. 乘积最大子序列MaximumProductSubarray
找出一个序列中乘积最大的连续子序列(该序列至少包含一个数)。例如, 给定序列 [2,3,-2,4],其中乘积最大的子序列为 [2,3] 其乘积为 6。Find the contiguous subarray within an array (containing at least one number) which has the largest product.For example, give...原创 2018-03-24 14:02:56 · 237 阅读 · 0 评论 -
LeetCode题库解答与分析——#198. 打家劫舍HouseRobber
你是一个专业的强盗,计划抢劫沿街的房屋。每间房都藏有一定的现金,阻止你抢劫他们的唯一的制约因素就是相邻的房屋有保安系统连接,如果两间相邻的房屋在同一晚上被闯入,它会自动联系警方。给定一个代表每个房屋的金额的非负整数列表,确定你可以在没有提醒警方的情况下抢劫的最高金额。You are a professional robber planning to rob houses along a stree...原创 2018-04-08 22:57:12 · 444 阅读 · 0 评论 -
LeetCode题库解答与分析——#231. 打家劫舍IIHouseRobberII
注意事项: 这是 打家劫舍 的延伸。在上次盗窃完一条街道之后,窃贼又转到了一个新的地方,这样他就不会引起太多注意。这一次,这个地方的所有房屋都围成一圈。这意味着第一个房子是最后一个是紧挨着的。同时,这些房屋的安全系统与上次那条街道的安全系统保持一致。给出一份代表每个房屋存放钱数的非负整数列表,确定你可以在不触动警报的情况下盗取的最高金额。Note: This is an extension of ...原创 2018-04-08 23:12:56 · 229 阅读 · 0 评论 -
LeetCode题库解答与分析——#221. 最大正方形MaximumSquare
在一个由0和1组成的二维矩阵内,寻找只包含1的最大正方形,并返回其面积。例如,给出如下矩阵:1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 返回 4.Given a 2D binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its ...原创 2018-04-08 23:43:35 · 714 阅读 · 0 评论 -
LeetCode题库解答与分析——#98. 验证二叉搜索树ValidateBinarySearchTree
给定一个二叉树,判断其是否是一个有效的二叉搜索树。一个二叉搜索树有如下定义:左子树只包含小于当前节点的数。右子树只包含大于当前节点的数。所有子树自身必须也是二叉搜索树。示例 1: 2 / \ 1 3 二叉树[2,1,3], 返回 true.示例 2: 1 / \ 2 3 二叉树 [1,2,3], 返回 false.Given a binary tree, d...原创 2018-04-09 09:28:57 · 226 阅读 · 0 评论 -
LeetCode题库解答与分析——#100. 相同的树SameTree
给定两个二叉树,写一个函数来检查它们是否相同。如果两棵树在结构上相同并且节点具有相同的值,则认为它们是相同的。 示例 1:输入 : 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3] 输出: true 示例 2:输入 : 1 1 ...原创 2018-04-09 12:54:26 · 211 阅读 · 0 评论 -
LeetCode题库解答与分析——#101. 对称二叉树SymmetricTree
给定一个二叉树,检查它是否是它自己的镜像(即,围绕它的中心对称)。例如,这个二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个 [1,2,2,null,3,null,3] 则不是: 1 / \ 2 2 \ \ 3 3Given a binary tree, che...原创 2018-04-09 13:06:31 · 180 阅读 · 0 评论 -
LeetCode题库解答与分析——#102. 二叉树的层次遍历BinaryTreeLevelOrderTraversal
给定一个二叉树,返回其按层次遍历的节点值。 (即zhu'ceng'de,从左到右访问)。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果为:[ [3], [9,20], [15,7] ]Given a binary tree, return the level orde...原创 2018-04-09 23:54:11 · 204 阅读 · 0 评论 -
LeetCode题库解答与分析——#103. 二叉树的锯齿形层次遍历BinaryTreeZigzagLevelOrderTraversal
给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回锯齿形层次遍历如下:[ [3], [20,9], [15,7] ]Given a binary tree, retur...原创 2018-04-10 08:59:09 · 531 阅读 · 0 评论 -
LeetCode题库解答与分析——#104. 二叉树的最大深度MaximumDepthOfBinaryTree
给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶节点的最长路径上的节点数。案例:给出二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回最大深度为 3 。Given a binary tree, find its maximum depth.The maximum depth is the numbe...原创 2018-04-10 09:07:49 · 142 阅读 · 0 评论 -
LeetCode题库解答与分析——#105. 从前序与中序遍历序列构造二叉树ConstructBinaryTreeFromPreorderAndInorderTraversal
给定一棵树的前序遍历与中序遍历,依据此构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出前序遍历 = [3,9,20,15,7] 中序遍历 = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7Given preorder and inorder traversal of a tree, construct the b...原创 2018-04-11 09:06:06 · 1523 阅读 · 0 评论 -
LeetCode题库解答与分析——#106. 从中序与后序遍历序列构造二叉树ConstructBinaryTreeFromInorderAndPostorderTraversal
给定一棵树的中序遍历与后序遍历,依据此构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出中序遍历 = [9,3,15,20,7] 后序遍历 = [9,15,7,20,3]返回如下的二叉树: 3 / \ 9 20 / \ 15 7Given inorder and postorder traversal of a tree, construct the ...原创 2018-04-17 09:09:58 · 655 阅读 · 0 评论 -
LeetCode题库解答与分析——#107. 二叉树的层次遍历 IIBinaryTreeLevelOrderTraversal
给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶节点所在层到根节点所在的层,逐层从左向右遍历)例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其自自底向上的层次遍历为:[ [15,7], [9,20], [3] ]Given a binary tree, return th...原创 2018-04-17 09:24:15 · 370 阅读 · 0 评论 -
LeetCode题库解答与分析——#108. 将有序数组转换为二叉搜索树ConvertSortedArrayToSearchBinaryTree
将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。此题中,一个高度平衡二叉树是指一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。 示例:给定有序数组: [-10,-3,0,5,9], 一种可行答案是:[0,-3,9,-10,null,5],它可以表示成下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -10 5Give...原创 2018-04-17 09:39:57 · 162 阅读 · 0 评论 -
LeetCode题库解答与分析——#121. 买卖股票的最佳时机BestTimeToBuyAndSellStock
假设你有一个数组,其中第 i 个元素是一支给定股票第 i 天的价格。如果您只能完成最多一笔交易(即买入和卖出一股股票),则设计一个算法来找到最大的利润。示例 1:输入: [7, 1, 5, 3, 6, 4] 输出: 5 最大利润 = 6-1 = 5(不是 7-1 = 6, 因为卖出价格需要大于买入价格) 示例 2:输入: [7, 6, 4, 3, 1] 输出: 0 在这种情况下, 没有交易完成...原创 2018-03-24 13:19:00 · 540 阅读 · 0 评论 -
LeetCode题库解答与分析——#120. 三角形最小路径和Triangle
给出一个三角形(数据数组),找出从上往下的最小路径和。每一步只能移动到下一行中的相邻结点上。比如,给你如下三角形:[ [2], [3,4], [6,5,7], [4,1,8,3] ] 则从上至下最小路径和为 11(即,2 + 3 + 5 + 1 = 11)注意:加分项:如果你可以只使用 O(n) 的额外空间(n是三角形的行数)。Given a triangle, fi...原创 2018-03-24 13:10:52 · 478 阅读 · 0 评论 -
LeetCode题库解答与分析——#96. 不同的二叉查找树UniqueBinarySearchTree
给出 n,问由 1...n 为节点组成的不同的二叉查找树有多少种?例如,给出 n = 3,则有 5 种不同形态的二叉查找树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ ...原创 2018-03-24 12:56:06 · 303 阅读 · 0 评论 -
LeetCode题库解答与分析——#91. 解码方法DecodeWays
包含 A-Z 的字母的消息通过以下规则编码:'A' -> 1 'B' -> 2 ... 'Z' -> 26 给定一个包含数字的编码消息,请确定解码方法的总数。例如,给定消息为 "12", 它可以解码为 "AB"(1 2)或 "L"(12)。"12" 的解码方法为 2 种。A message containing letters from A-Z is being encoded ...原创 2018-03-24 12:08:06 · 1143 阅读 · 0 评论 -
LeetCode题库解答与分析——#64. 最小路径和MinimumPathsSum
#64. 最小路径和MinimumPathsSum给定一个只含非负整数的 m x n 网格,找到一条从左上角到右下角的可以使数字之和最小的路径。Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all nu...原创 2018-03-17 17:30:59 · 161 阅读 · 0 评论 -
LeetCode题库解答与分析——#63.不同路径IIUniquePathsII
#63 不同路径II Unique Paths II这是“不同路径” 的进阶问题:现在考虑网格中有障碍物。那样将会有多少条不同的路径从左上角到右下角?网格中的障碍物和空位置分别用 1 和 0 来表示。Follow up for "Unique Paths":Now consider if some obstacles are added to the grids. How many unique ...原创 2018-03-17 16:32:47 · 290 阅读 · 0 评论 -
LeetCode题库解答与分析——#62. 不同路径UniquePaths
#62 不同路径 Unique Paths机器人位于一个 m x n 网格的左上角, 在下图中标记为“Start” (开始)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角,在下图中标记为“Finish”(结束)。问有多少条不同的路径?A robot is located at the top-left corner of a m x n grid (marked 'Start'...原创 2018-03-17 16:20:10 · 543 阅读 · 0 评论 -
LeetCode题库解答与分析——#12.整数转罗马数字IntegerToRoman
#12 整数转罗马数字 Integer To Roman给定一个整数,将其转为罗马数字。输入保证在 1 到 3999 之间。Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 to 3999.思路一:根据罗马数字编码规律对特定的几个数字进行比较并对其编码...原创 2018-03-17 15:58:13 · 167 阅读 · 0 评论 -
LeetCode题库解答与分析——#53.最大子序和MaximumSubarray
#53 最大子序和 Maximum Subarray给定一个序列(至少含有 1 个数),从该序列中寻找一个连续的子序列,使得子序列的和最大。例如,给定序列 [-2,1,-3,4,-1,2,1,-5,4],连续子序列 [4,-1,2,1] 的和最大,为 6。Find the contiguous subarray within an array (containing at least one nu...原创 2018-03-14 22:13:40 · 271 阅读 · 0 评论 -
LeetCode题库解答与分析——#11.盛最多水的容器ContainerWithMostWater
#11 盛最多水的容器 Container With Most Water给定 n 个正整数 a1,a2,...,an,其中每个点的坐标用(i, ai)表示。 画 n 条直线,使得线 i 的两个端点处于(i,ai)和(i,0)处。请找出其中的两条直线,使得他们与 X 轴形成的容器能够装最多的水。Given n non-negative integers a1, a2, ..., an, where...原创 2018-03-14 22:04:56 · 3830 阅读 · 0 评论 -
LeetCode题库解答与分析——#9.回文数PalindromeNumber
#9 回文数 Palindrome Number判断一个整数是否是回文数。不能使用辅助空间。Determine whether an integer is a palindrome. Do this without extra space.一些提示:负整数可以是回文数吗?(例如 -1)如果你打算把整数转为字符串,请注意不允许使用辅助空间的限制。你也可以考虑将数字颠倒。但是如果你已经解决了 “颠倒整...原创 2018-03-14 21:41:18 · 224 阅读 · 0 评论 -
LeetCode题库解答与分析——#6.Z字形转换ZigZagConversion
#6 Z字形转换 ZigZag Conversion将字符串 "PAYPALISHIRING" 以Z字形排列成给定的行数:(下面这样的形状)P A H N A P L S I I G Y I R 之后按逐行顺序依次排列:"PAHNAPLSIIGYIR"实现一个将字符串进行指定行数的转换的函数:string convert(string text, int nRows);conv...原创 2018-03-11 23:22:34 · 206 阅读 · 0 评论 -
LeetCode题库解答与分析——#5.最长回文子串LongestPalindromicSubstring
#5 最长回文子串 Longest Palindromic Substring给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 长度最长为1000。Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.示例:输...原创 2018-03-11 23:00:35 · 153 阅读 · 0 评论 -
LeetCode题库解答与分析——#2.两数相加AddTwoNumbers
#2.两数相加AddTwoNumbers 给定两个非空链表来代表两个非负数,位数按照逆序方式存储,它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。You are given two non-empty linked lists representing two non-negative integers. The digits...原创 2018-03-11 22:06:53 · 291 阅读 · 0 评论 -
LeetCode题库解答与分析——#1.两数之和TwoSum
#1 两数之和 Two Sum给定一个整数数列,找出其中和为特定值的那两个数。你可以假设每个输入都只会有一种答案,同样的元素不能被重用。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 in...原创 2018-03-11 21:25:44 · 306 阅读 · 0 评论 -
LeetCode题库解答与分析——#3.无重复字符的最长子串LongestSubstringWithoutRepeatingCharacters
#3 无重复字符的最长子串 Longest Substring Without Repeating Characters给定一个字符串,找出不含有重复字符的 最长子串 的长度。Given a string, find the length of the longest substring without repeating characters.示例:给定 "abcabcbb" ,没有重复字符的最...原创 2018-03-11 22:53:00 · 303 阅读 · 0 评论 -
LeetCode题库解答与分析——#7.颠倒整数ReverseInteger
#7 颠倒整数 Reverse Integer给定一个范围为 32 位 int 的整数,将其颠倒。Given a 32-bit signed integer, reverse digits of an integer.例 1:输入: 123 输出: 321 例 2:输入: -123 输出: -321 例 3:输入: 120 输出: 21 注意:假设我们的环境只能处理 32 位 int 范围...原创 2018-03-14 21:23:35 · 328 阅读 · 0 评论 -
LeetCode题库解答与分析——#95. 不同的二叉查找树 IIUniqueBinarySearchTreeII
给定一个整数 n,生成所有由 1...n 为节点组成的不同的二叉查找树。例如,给定 n = 3,则返回所有 5 种不同形态的二叉查找树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ ...转载 2018-03-24 12:28:09 · 1209 阅读 · 1 评论 -
LeetCode题库解答与分析——#560. 和为K的子数组SubarraySumEqualsK
给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2 输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。 说明 :数组的长度为 [1, 20,000]。数组中元素的范围是 [-1000, 1000] ,且整数 k 的范围是 [-1e7, 1e7]。Given an array of integer...原创 2018-06-27 23:16:30 · 566 阅读 · 0 评论