![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
文章平均质量分 57
richlaji
这个作者很懒,什么都没留下…
展开
-
289. Game of Life
LeetCode题目地址:https://leetcode.com/problems/game-of-life/解题思路:当前状态用1个bit表示,可以把下一个状态和当前状态一起用2bit表示(next state, current state),具体思路参考https://discuss.leetcode.com/topic/29054/easiest-java-solution-with-e原创 2016-10-08 22:52:24 · 204 阅读 · 0 评论 -
502. IPO
LeetCode题目地址:https://leetcode.com/problems/ipo/#/description问题描述:大概意思就是给一组项目,分别需要启动资金C[i]和收益P[i],问给定初始资金w和最多k次项目,最多能收益多少解题思路:贪心算法,每次找到当前有资本投资的又收益最大的,这样的过程执行k次,也是很自然的想到先用qsort排序,再k次循环找到当前收益最大的且没有投资过的原创 2017-03-25 22:32:35 · 305 阅读 · 0 评论 -
523. Continuous Subarray Sum
LeetCode题目地址:https://leetcode.com/problems/continuous-subarray-sum/#/description问题分析&解决思路:问给一个非负的数组,是否存在长度不小于2的连续子数组,使得它们的和是k的整数呗。思路如下,维护一个sum,顺着加,每次加完之后取模,如果发现模相同,则说明能整除(比如mod的顺序分别是是1,3,6,4,3那么第二次和第原创 2017-04-03 17:06:22 · 828 阅读 · 0 评论 -
287. Find the Duplicate Number
LeetCode题目地址:https://leetcode.com/problems/find-the-duplicate-number/#/description问题描述&解题思路:给一个n+1大小的数组,其中这些整数都在1到n之中,假设只有一个数字会有重复(不一定只重复一次),求出这个重复的数字。如果只有只重复一次可以用抑或来做,如果重复的数字大于一半,那么遍历一次即可,但是这里都没有这样的原创 2017-04-05 12:31:46 · 190 阅读 · 0 评论 -
375. Guess Number Higher or Lower II
LeetCode题目地址:https://leetcode.com/problems/guess-number-higher-or-lower-ii/#/description问题描述&解题思路:告诉你一个数n,要你从1~n中猜出对方选的数,每次的代价是你猜的那个数,对方会告诉你大了还是小了或者猜对了,猜对的那次不需要付代价。一开始想着就二分呗,每次选大的那边继续,但发现好像不是这么简单比如n=原创 2017-05-03 11:00:20 · 254 阅读 · 0 评论 -
34. Search for a Range
LeetCode题目地址:https://leetcode.com/problems/search-for-a-range/#/description问题描述&解题思路:给定一个排好序的数组,数组中可能有重复的元素,再给一个目标数target,找到target出现的第一个下标和最后一个下标,如果没有target则返回(-1,-1)。主要通过二分的方法,先找到第一个出现target的下标,再通过二原创 2017-04-26 10:57:20 · 267 阅读 · 0 评论 -
152. Maximum Product Subarray
LeetCode地址:https://leetcode.com/problems/maximum-product-subarray/#/description问题描述:求的是一个连续的子序列,使得乘积最大,注意因为都是整数,所以除了×0之外,都会让数的绝对值变大或者起码不变。那么可以理解成,0是分割点,如果都是正的,那么只需要对两个0+起始点和结束点划分的连续子序列不断求积即可,只要比记录的最大原创 2017-06-10 18:31:42 · 187 阅读 · 0 评论 -
312. Burst Balloons
LeetCode题目地址:https://leetcode.com/problems/burst-balloons/#/description题目描述&解题思路:给n个气球,每个气球有一个数字,用一个数组nums表示这些数字。戳破这个气球i可以得到nums[i]*nums[i-1]*nums[i+1]个硬币,可以假设nums[-1]和nums[n]=1。 求能获得的最大硬币个数。nums = [原创 2017-06-22 20:17:57 · 305 阅读 · 0 评论 -
241. Different Ways to Add Parentheses
LeetCode题目地址:https://leetcode.com/problems/different-ways-to-add-parentheses/#/description问题描述&解题思路:给一个字符串,比如”2*3-4*5“,根据运算顺序的不同组合,可以得到以下结果:(2*(3-(4*5))) = -34((2*3)-(4*5)) = -14((2*(3-4))*5) = -10原创 2017-06-14 13:05:01 · 275 阅读 · 0 评论 -
74. Search a 2D Matrix
LeetCode题目地址:https://leetcode.com/problems/search-a-2d-matrix/#/description问题描述&解题思路:给一个二维的数组,有以下两个属性:(1)下一行的第一个元素比这一行的第一个元素大(2)每行元素左边的比右边的小,给一个数target,判断是否在这个二维数组中。那么很简单地想到,就是先用二分在行中找,再用二分在列中找,但是这两个原创 2017-04-10 18:15:24 · 179 阅读 · 0 评论 -
134. Gas Station
LeetCode题目地址:https://leetcode.com/problems/gas-station/#/solutions问题描述&解题思路:有n个加油站围成一个圈,其中gas[i]表示第i个加油站的油,cost[i]表示从i到i+1需要耗费的油,然后你的车的容量是无限的,问车从哪个站开始(i从0到size-1)能绕加油站一圈。潜在的意思是,从哪个站开始,我可以绕一圈且每时每刻,车里的原创 2017-03-30 10:19:02 · 197 阅读 · 0 评论 -
55. Jump Game
LeetCode题目地址: https://leetcode.com/problems/jump-game/#/description问题描述&解题思路:题目意思是说给一段非负的数字,起始位置在index=0的地方,nums[index]表示你在当前的index下,最多能走nums[index]步,走到nums[index]+index的位置。于是使用贪心算法,假设你当前处于第index的位置,原创 2017-03-29 15:15:37 · 282 阅读 · 0 评论 -
36. Valid Sudoku
LeetCode题目地址:https://leetcode.com/problems/valid-sudoku/解题思路:这题目是要判断当前数独是否合理,而不是要填充完成,需要满足三个条件:每行没有重复数字出现每列没有重复数字出现每个小方块没有重复数字出现 -用三个二维数组来表示9行,9列以及9个小方块是否用过某个数字,详细参考:https://discuss.leetcode.com/t原创 2016-10-10 00:45:40 · 225 阅读 · 0 评论 -
198. House Robber&213. House Robber II&337. House Robber III
LeetCode题目地址: 198:https://leetcode.com/problems/house-robber/213:https://leetcode.com/problems/house-robber-ii/解题思路: 198:动态规划,由于相邻的两家不能同时抢劫,所以判断max(抢第i家,不抢第i家)来表示当前能抢到的最大钱数213:第0家和第n-1家相邻,其余与198一原创 2016-10-24 11:18:25 · 464 阅读 · 0 评论 -
396. Rotate Function
LeetCode题目地址:https://leetcode.com/problems/rotate-function/解题思路:通过寻找F(k)和F(k-1)的关系,使得算法能在O(n)的复杂度中得出结果F(k) = 0 * Bk[0] + 1 * Bk[1] + ... + (n-1) * Bk[n-1]F(k-1) = 0 * Bk-1[0] + 1 * Bk-1[1] + ... +原创 2016-10-07 11:48:55 · 269 阅读 · 0 评论 -
215. Kth Largest Element in an Array
LeetCode题目地址:https://leetcode.com/problems/kth-largest-element-in-an-array/?tab=Description解题思路:一个很瓜皮的想法,先对nums进行排序,然后通过获取nums[nums.size()-k]来获得,第1大的在size()-1,那么第k大的就在size()-k,该算法的时间复杂度显然是nlogn,就是快排的原创 2017-03-04 20:46:25 · 204 阅读 · 0 评论 -
459. Repeated Substring Pattern
LeetCode题目地址:https://leetcode.com/problems/repeated-substring-pattern/?tab=Description 解题思路:简单描述一下题目,就是输入是一个字符串,问该字符串能否由它的子串多次复制而得。注释中包含了思路,主要参考https://discuss.leetcode.com/topic/67652/c-o-n-using-kmp原创 2017-02-27 01:24:05 · 297 阅读 · 0 评论 -
310. Minimum Height Trees Add to List
LeetCode题目地址:https://leetcode.com/problems/minimum-height-trees/#/description思考过程:题目要求是给一个具有树的属性的无向图,即每个点仅被另一条边连在一起,也就是说对于n个节点的图,只有n-1条边。题目目的是要找到其中一个节点作为根节点,能使得整个树的高度最小,这样的树叫做Minimum Height Tree(MHT)原创 2017-03-19 20:02:33 · 269 阅读 · 0 评论 -
98. Validate Binary Search Tree
LeetCode题目地址:https://leetcode.com/problems/validate-binary-search-tree/?tab=Description思考过程: 题目要求是给一个树的根节点,判断是否二叉搜索树,即左子树最大的小于当前根节点的值,当前根节点的值小于右子树最小的。一开始想的花里胡哨,想弄两个递归函数一个求最大一个求最小,但是这样的话对每个节点都要求一次显得很原创 2017-03-11 19:07:28 · 184 阅读 · 0 评论 -
78. Subsets & 90. Subsets II
LeetCode题目地址: 78:https://leetcode.com/problems/subsets/#/description90:https://leetcode.com/problems/subsets-ii/#/description问题描述&解题思路:首先先把两道题的题目说一下,78题问的是给你一个nums数组,要求nums数组的所有子集合,其中nums数组都是没有重复的数原创 2017-04-07 11:00:25 · 220 阅读 · 0 评论 -
494. Target Sum
LeetCode题目地址:https://leetcode.com/problems/target-sum/#/description问题描述:给定一个数组,和一个目标数,数组中的每个数可以取+也可以取-,问加起来是目标数的途径有多少种解题思路:最直接的思路就是,对于数组的size=n,一共有2的n次方种组合,那么挨个试,如果求和等于目标数target,那么途径就加一,但是因为做了很多重复的运原创 2017-06-27 21:20:24 · 321 阅读 · 0 评论