自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(141)
  • 问答 (1)
  • 收藏
  • 关注

原创 45. 跳跃游戏 II

给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。示例:输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。 从下标为 0 跳到下标为 1 的位置,跳1步,然后跳3步到达数组的最后一个位置。说明:假设你总是可以到达数...

2019-04-25 14:25:29 180

原创 30. 串联所有单词的子串

给定一个字符串s和一些长度相同的单词words。找出s中恰好可以由words中所有单词串联形成的子串的起始位置。注意子串要与words中的单词完全匹配,中间不能有其他字符,但不需要考虑words中单词串联的顺序。示例 1:输入: s = "barfoothefoobarman", words = ["foo","bar"]输出:[0,9]解释:...

2019-04-25 11:49:51 241

原创 32. 最长有效括号

给定一个只包含'('和')'的字符串,找出最长的包含有效括号的子串的长度。示例1:输入: "(()"输出: 2解释: 最长有效括号子串为 "()"示例 2:输入: ")()())"输出: 4解释: 最长有效括号子串为 "()()"class Solution { public int longestValidParentheses(String...

2019-04-25 10:00:29 173

原创 71. 简化路径

以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..)表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。更多信息请参阅:Linux / Unix中的绝对路径 vs 相对路径请注意,返回的规范路径必须始终以斜杠/开头,并且两个目录名之间必须只有...

2019-04-24 15:51:40 125

原创 166. 分数到小数

给定两个整数,分别表示分数的分子numerator 和分母 denominator,以字符串形式返回小数。如果小数部分为循环小数,则将循环的部分括在括号内。示例 1:输入: numerator = 1, denominator = 2输出: "0.5"示例2:输入: numerator = 2, denominator = 1输出: "2"示例3:输入...

2019-04-24 15:31:23 142

原创 682. 棒球比赛

你现在是棒球比赛记录员。给定一个字符串列表,每个字符串可以是以下四种类型之一:1.整数(一轮的得分):直接表示您在本轮中获得的积分数。2."+"(一轮的得分):表示本轮获得的得分是前两轮有效回合得分的总和。3."D"(一轮的得分):表示本轮获得的得分是前一轮有效回合得分的两倍。4."C"(一个操作,这不是一个回合的分数):表示您获得的最后一个有效回合的分数是无效的,应该被移除...

2019-04-24 14:18:53 104

原创 999. 车的可用捕获量

在一个 8 x 8 的棋盘上,有一个白色车(rook)。也可能有空方块,白色的象(bishop)和黑色的卒(pawn)。它们分别以字符 “R”,“.”,“B” 和 “p” 给出。大写字符表示白棋,小写字符表示黑棋。车按国际象棋中的规则移动:它选择四个基本方向中的一个(北,东,西和南),然后朝那个方向移动,直到它选择停止、到达棋盘的边缘或移动到同一方格来捕获该方格上颜色相反的卒。另外,车不能与其...

2019-04-24 13:42:45 2483

原创 754. 到达终点数字

在一根无限长的数轴上,你站在0的位置。终点在target的位置。每次你可以选择向左或向右移动。第 n 次移动(从 1 开始),可以走 n 步。返回到达终点需要的最小移动次数。示例 1:输入: target = 3输出: 2解释:第一次移动,从 0 到 1 。第二次移动,从 1 到 3 。示例 2:输入: target = 2输出: 3解释:第一次移动,从...

2019-04-24 11:50:10 345

原创 258. 各位相加

给定一个非负整数num,反复将各个位上的数字相加,直到结果为一位数。示例:输入: 38输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于2 是一位数,所以返回 2。进阶:你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?Reivew:1,2,3,4,5,6,7,8,9,10,11....他们的结果分别为...

2019-04-24 11:13:23 2160

原创 335. 路径交叉

给定一个含有n个正数的数组x。从点(0,0)开始,先向北移动x[0]米,然后向西移动x[1]米,向南移动x[2]米,向东移动x[3]米,持续移动。也就是说,每次移动后你的方位会发生逆时针变化。编写一个O(1)空间复杂度的一趟扫描算法,判断你所经过的路径是否相交。示例1:┌───┐│ │└───┼──> │输入: [2,1...

2019-04-24 10:57:38 141

原创 443. 压缩字符串

给定一组字符,使用原地算法将其压缩。压缩后的长度必须始终小于或等于原数组长度。数组的每个元素应该是长度为1的字符(不是 int 整数类型)。在完成原地修改输入数组后,返回数组的新长度。进阶:你能否仅使用O(1) 空间解决问题?示例 1:输入:["a","a","b","b","c","c","c"]输出:返回6,输入数组的前6个字符应该是:["a"...

2019-04-24 10:04:04 91

原创 791. 自定义字符串排序

字符串S和T只包含小写字符。在S中,所有字符只会出现一次。S已经根据某种规则进行了排序。我们要根据S中的字符顺序对T进行排序。更具体地说,如果S中x在y之前出现,那么返回的字符串中x也应出现在y之前。返回任意一种符合条件的字符串T。示例:输入:S = "cba"T = "abcd"输出: "cbad"解释: S中出现了字符 "a", "b", "c", 所以 "a"...

2019-04-24 09:45:36 110

原创 696. 计数二进制子串

给定一个字符串s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。示例 1 :输入: "00110011"输出: 6解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。...

2019-04-17 15:33:55 95

原创 812. 最大三角形面积

给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积。示例:输入: points = [[0,0],[0,1],[1,0],[0,2],[2,0]]输出: 2解释: 这五个点如下图所示。组成的橙色三角形是最大的,面积为2。注意:3 <= points.length <= 50. 不存在重复的点。 -50 <= points...

2019-04-17 15:06:30 112

原创 881. 救生艇

第i个人的体重为people[i],每艘船可以承载的最大重量为limit。每艘船最多可同时载两人,但条件是这些人的重量之和最多为limit。返回载到每一个人所需的最小船数。(保证每个人都能被船载)。示例 1:输入:people = [1,2], limit = 3输出:1解释:1 艘船载 (1, 2)示例 2:输入:people = [3,2,2,...

2019-04-16 17:36:15 234

原创 880. 索引处的解码字符串

给定一个编码字符串S。为了找出解码字符串并将其写入磁带,从编码字符串中每次读取一个字符,并采取以下步骤:如果所读的字符是字母,则将该字母写在磁带上。 如果所读的字符是数字(例如d),则整个当前磁带总共会被重复写d-1次。现在,对于给定的编码字符串S和索引K,查找并返回解码字符串中的第K个字母。示例 1:输入:S = "leet2code3", K = 10...

2019-04-16 17:02:49 120

原创 496. 下一个更大元素 I

给定两个没有重复元素的数组nums1和nums2,其中nums1是nums2的子集。找到nums1中每个元素在nums2中的下一个比其大的值。nums1中数字x的下一个更大元素是指x在nums2中对应位置的右边的第一个比x大的元素。如果不存在,对应位置输出-1。示例 1:输入: nums1 = [4,1,2], nums2 = [1,3,4,2...

2019-04-16 14:43:44 110

原创 739. 每日温度

根据每日气温列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高的天数。如果之后都不会升高,请输入0来代替。例如,给定一个列表temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是[1, 1, 4, 2, 1, 1, 0, 0]。提示:气温列表长度的范围是[1, 30000]。每个气温的值的都是[3...

2019-04-16 12:28:07 116

原创 735. 行星碰撞

给定一个整数数组asteroids,表示在同一行的行星。对于数组中的每一个元素,其绝对值表示行星的大小,正负表示行星的移动方向(正表示向右移动,负表示向左移动)。每一颗行星以相同的速度移动。找出碰撞后剩下的所有行星。碰撞规则:两个行星相互碰撞,较小的行星会爆炸。如果两颗行星大小相同,则两颗行星都会爆炸。两颗移动方向相同的行星,永远不会发生碰撞。示例 1:输入: asteroi...

2019-04-16 11:27:51 462

原创 605. 种花问题

假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数n。能否在不打破种植规则的情况下种入n朵花?能则返回True,不能则返回False。示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出...

2019-04-15 16:26:13 143

原创 495. 提莫攻击

在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。现在,给出提莫对艾希的攻击时间序列和提莫攻击的中毒持续时间,你需要输出艾希的中毒状态总时长。你可以认为提莫在给定的时间点进行攻击,并立即使艾希处于中毒状态。示例1:输入: [1,4], 2输出: 4原因: 在第 1 秒开始时,提莫开始对艾希进行攻击并使其立即中毒。中毒状...

2019-04-15 15:09:56 123

原创 845. 数组中的最长山脉

我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”:B.length >= 3 存在0 < i< B.length - 1使得B[0] < B[1] < ... B[i-1] < B[i] > B[i+1] > ... > B[B.length - 1](注意:B 可以是 A 的任意子数组,包括整个数组 A。)...

2019-04-15 15:08:30 134

原创 922. 按奇偶排序数组 II

给定一个非负整数数组A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当A[i]为奇数时,i也是奇数;当A[i]为偶数时,i也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。提示:2 <...

2019-04-12 17:58:25 65

原创 386. 字典序排数

给定一个整数n, 返回从1到n的字典顺序。例如,给定n=1 3,返回 [1,10,11,12,13,2,3,4,5,6,7,8,9] 。请尽可能的优化算法的时间复杂度和空间复杂度。 输入的数据n小于等于5,000,000。Review:回溯法Code:class Solution { public List<Integer> l...

2019-04-12 17:36:36 325

原创 260. 只出现一次的数字 III

给定一个整数数组nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。示例 :输入: [1,2,1,3,2,5]输出: [3,5]注意:结果输出的顺序并不重要,对于上面的例子,[5, 3]也是正确答案。 你的算法应该具有线性时间复杂度。你能否仅使用常数空间复杂度来实现?Review:这个题在显示开发中可能会用到,感觉还是蛮实...

2019-04-12 16:45:56 93

原创 137. 只出现一次的数字 II

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,3,2]输出: 3示例2:输入: [0,1,0,1,0,1,99]输出: 99Review:上一个题用了异或运算来抵消相同的两个数但是并不适用于奇数操...

2019-04-12 16:11:53 60

原创 136. 只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4Reivew:使用异或运算对相同的数字进行抵消Code: public int...

2019-04-12 15:08:56 47

原创 268. 缺失数字

给定一个包含0, 1, 2, ..., n中n个数的序列,找出 0 ..n中没有出现在序列中的那个数。示例 1:输入: [3,0,1]输出: 2示例2:输入: [9,6,4,2,3,5,7,0,1]输出: 8说明:你的算法应具有线性时间复杂度。你能否仅使用额外常数空间来实现?Review:O(n)复杂度,常数级空间我们可以遍历数组,让数组...

2019-04-12 15:04:59 70

原创 667. 优美的排列 II

给定两个整数n和k,你需要实现一个数组,这个数组包含从1到n的n个不同整数,同时满足以下条件:① 如果这个数组是 [a1, a2, a3, ... , an] ,那么数组[|a1- a2|, |a2- a3|, |a3- a4|, ... , |an-1- an|] 中应该有且仅有k 个不同整数;.② 如果存在多种答案,你只需实现并返回其中任意一种.示例 ...

2019-04-12 14:43:47 61

原创 893. 特殊等价字符串组

你将得到一个字符串数组A。如果经过任意次数的移动,S == T,那么两个字符串S和T是特殊等价的。一次移动包括选择两个索引i和j,且i%2 == j%2,并且交换S[j]和S [i]。现在规定,A中的特殊等价字符串组是A的非空子集S,这样不在S中的任何字符串与S中的任何字符串都不是特殊等价的。返回A中特殊等价字符串组的数量。...

2019-04-12 11:47:55 107

原创 58. 最后一个单词的长度

给定一个仅包含大小写字母和空格' '的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0。说明:一个单词是指由字母组成,但不包含任何空格的字符串。示例:输入: "Hello World"输出: 5trim 和 lastIndexOf 可以用,不要加什么contians,避免全部遍历Code:class Solution { publ...

2019-04-12 09:57:18 79

原创 83. 删除排序链表中的重复元素

给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例1:输入: 1->1->2输出: 1->2示例2:输入: 1->1->2->3->3输出: 1->2->3Code:class Solution { public ListNode deleteDuplicates(ListNode...

2019-04-11 18:30:58 47

原创 103. 二叉树的锯齿形层次遍历

给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回锯齿形层次遍历如下:[ [3], [20,9], [15,7]]Review:正常ad...

2019-04-11 18:20:16 57

原创 378. 有序矩阵中第K小的元素

给定一个n x n矩阵,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素。请注意,它是排序后的第k小元素,而不是第k个元素。示例:matrix = [ [ 1, 5, 9], [10, 11, 13], [12, 13, 15]],k = 8,返回 13。说明:你可以假设 k 的值永远是有效的, 1 ≤ k ≤ n2。Review...

2019-04-11 17:29:05 71

原创 721. 账户合并

给定一个列表accounts,每个元素accounts[i]是一个字符串列表,其中第一个元素accounts[i][0]是名称 (name),其余元素是emails表示该帐户的邮箱地址。现在,我们想合并这些帐户。如果两个帐户都有一些共同的邮件地址,则两个帐户必定属于同一个人。请注意,即使两个帐户具有相同的名称,它们也可能属于不同的人,因为人们可能具有相同的名称。一个人最初可以拥...

2019-04-11 15:36:59 416

原创 139. 单词拆分

给定一个非空字符串s和一个包含非空单词列表的字典wordDict,判定s是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。示例 1:输入: s = "leetcode", wordDict = ["leet", "code"]输出: true解释: 返回 true 因为 "leetcode" 可...

2019-04-11 11:51:15 79

原创 26. 删除排序数组中的重复项

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例2:...

2019-04-10 15:29:19 57

原创 781. 森林中的兔子

森林中,每个兔子都有颜色。其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色。我们将这些回答放在answers数组里。返回森林中兔子的最少数量。示例:输入: answers = [1, 1, 2]输出: 5解释:两只回答了 "1" 的兔子可能有相同的颜色,设为红色。之后回答了 "2" 的兔子不会是红色,否则他们的回答会相互矛盾。设回答了 "2" 的兔子为...

2019-04-03 17:35:21 141

原创 171. Excel表列序号

给定一个Excel表格中的列名称,返回其相应的列序号。例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ...示例 1:输入: "A"输出: 1示例2:输入: "AB"输出: 28示例3:...

2019-04-03 16:23:38 112

原创 304. 二维区域和检索 - 矩阵不可变

Given a 2D matrixmatrix, find the sum of the elements inside the rectangle defined by its upper left corner (row1,col1) and lower right corner (row2,col2).The above rectangle (with the red borde...

2019-04-03 16:06:24 158

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除