LeetCode
金色麦田~
新人小白,多多关照!
展开
-
LeetCode-38. Count and Say
前言 改用c++写了,之前用python,语法啥的算是熟悉了一些吧,现在用c++,也希望能熟悉一下,主要还是算法思想之类的吧。 问题描述 大概的意思是需要把一个字符串读出来,读的规则是有k个1就输出k1,有n个2就输出n2,然后这样循环读下去,问第n次循环应该输出什么? 解决方案 我的解决方案依然是很笨重,基本没啥可借鉴的地方,同时由于对c++不太熟悉,string和char之间的转换做的很难受...原创 2019-12-02 20:41:40 · 93 阅读 · 0 评论 -
LeetCode-37. Sudoku Solver
前言 最近太懒了,先把LeetCode的题更新上面吧。 问题描述 解决方案 我的解决方案非常简单,就是递归遍历各个方格,填入1-9,然后判断是否合法,如果合法则判断下一个,直到判断到最高一个方格仍然合法,则当前结果就是一个合法的结果,返回该结果即可。用python写的,感觉写的很费事,将就着看吧,而且这样写的效率也不是很高,以后有时间再提升一下吧(估计以后没有心情改了。。。。) class S...原创 2019-12-02 20:27:27 · 85 阅读 · 0 评论 -
LeetCode-30. Substring with Concatenation of All Words
前言 突然一周没刷过题了,有点时间就刷一下题吧,顺便把解题思路记录下来,一个是自己做笔记,一个是给大家一点思路。前面的二十多道以后有时间再补吧,现在刷到了30题,就从这个开始吧! 问题描述 解法一 首先是一种暴力解法,直接遍历所有可能的list,然后看这个list是否满足要求,在验证该list是否满足要求 的时候需要使用到类似hash的数据结构,保证words中的每个元素都被用到过一次,由于其中...原创 2019-09-02 20:05:09 · 140 阅读 · 0 评论 -
LeetCode-31. Next Permutation
前言 一道题想了两天才想出来,刚开始想法很复杂,后来终于想出了一种O(n)的做法。但是并没有超过90的人,以为自己的解法不是最佳的,但是看了官方给的solution,原来就是我的这种做法,看来英雄所见略同呀,哈哈! 问题描述 解法 解题方法是从后往前,直到找到一个下降沿的值,然后将这个值和后面的第一个比它大的值互换,最后再把 这个值后面的所有数按照升序重新排列一下,这样就得到了比原来的数更大的下...原创 2019-09-04 19:50:55 · 71 阅读 · 0 评论 -
LeetCode-32. Longest Valid Parentheses
前言 用了一个小时,想了一种O(n)的算法,结果发现才超过百分之十几的人。。。但是后来看了solution,基本也都是这种复杂度呀,为啥我的运行的这么慢呢?可能是代码写的太烂了吧,又参考了别人的思想,写了动态规划的解法,如果有时间就写下来,大家也可以去看官方给的解法。 问题描述 解法一 下面的解法就是我的垃圾解法,首先通过一个list来实现堆栈,对整个数组进行遍历,找到所有可以配对的括号,记录在...原创 2019-09-05 20:43:09 · 120 阅读 · 0 评论 -
LeetCode-33. Search in Rotated Sorted Array
前言 这个点写博客,真的是有点被逼无奈呀,室友每天晚上都睡得很晚(不是打游戏,是在学习),我是基本全黑的情况下还要酝酿很久才能睡着的人,所以更别提有光和有鼠标键盘声的环境下了,既然睡不着就起来刷题写博客吧,总比在床上玩手机来的好!所以这应该算是我的第一篇深夜博客吧,以后估计还会有更多吧。。。 问题描述 解法一 看到这个问题第一个想法肯定就是二分法呀,又要求了时间复杂度在log(n),所以二分法没...原创 2019-09-07 01:19:20 · 84 阅读 · 0 评论 -
LeetCode-34. Find First and Last Position of Element in Sorted Array
前言 又一次深夜博客,今天室友睡得很早,十二点半不到就上床了(已经是很早了。。。),但是我这边却刚刚开始写,所以也一下子停不下来,就只能写晚再睡了。。。 问题描述 解法一 我的解法应该是最容易想到的一种解法吧,首先使用二分法,这个肯定是确定的。然后在找到目标值的位置后,分别向目标位置两边进行遍历,直到找到第一个与其不同的值,然后分别记录下其左右边界即可。下面就是俺的代码: class Solut...原创 2019-09-09 00:51:52 · 116 阅读 · 0 评论 -
LeetCode-35. Search Insert Position
前言 很简单的一道题,但是我却好像发现了一个BUG,后面会有讲到。。。 问题描述 解法 这个题基本上没有别的方法了吧,二分法。连着好几道都是二分法了,当然也可以采用O(n)的方法,但这也是最大的疑惑呀。。。 直接给我的代码吧 class Solution: def searchInsert(self, nums: List[int], target: int) -> int: ...原创 2019-09-09 19:25:54 · 106 阅读 · 0 评论 -
LeetCode-36. Valid Sudoku
前言 两周没有更新博客了,一个是赶上中秋放假,一个是最近再参加一个比赛,忙的一批,也就没有刷题和写博客。。。 这个排名的规则好像变了,我的排名一下子从130W+变到了10W+,简直是羞愧难当呀,就发这么几篇水博客还能这样,以后要勤发博客了,要不然都对不起这个排名了。。。 问题描述 解决方案 这个只是让验证当前是否合法,那就按照数独的规则一行,一列,一个九宫格地验证呗,可以使用hash表也可以...原创 2019-09-29 18:02:15 · 88 阅读 · 0 评论