leetcode
gyl2016
这个作者很懒,什么都没留下…
展开
-
Leetcode——66 plusOne
66、plusOneGiven a non-negative integer represented as a non-empty array of digits, plus one to the integer.You may assume the integer do not contain any leading zero, except the number 0 itsel原创 2017-10-27 15:42:30 · 270 阅读 · 0 评论 -
ISO C++ forbids comparison between pointer and integer [-fpermissive]
今天用C++刷题时,遇到了这个问题,怪自己粗心大意了。在判断字符指针是否指向字符串末尾时,将字符 '\0' 写成了 "\0" 引发的比较错误,"\0" 在比较中表示的是字符串 "\0" 的地址。由此引发要注意的一点是:C++中字符串比较最好用strcmp。...原创 2018-12-12 21:50:03 · 23071 阅读 · 4 评论 -
Leetcode——第136题——Single Number
题目意思:给定一个整数数组,其中除了某个元素只出现一次外,其余元素都出现两次。要求:算法的时间复杂度是线性的,并且不能使用额外的空间。传统方法:(1)一个一个比较,将只出现1次的数字找出来,时间复杂度为O(n^2)(2)先对数组进行排序,然后相邻元素进行比较,a1和a2比较,a3和a4比较,依次下去,直到找到只出现1次的数字。第一种传统方法:Leetcode上,这种方法原创 2017-12-18 22:07:14 · 516 阅读 · 0 评论 -
Leetcode——第108题
题目意思:将排序后的数组转换成二叉查找树。二叉查找树的定义:Description:已知一个按升序排列的数组,将它转换为一个平衡二叉树。其中,平衡二叉树(AVL树)被定义为其左子树和右子树都是高度平衡的二叉树,且左子树和右子树的高度之差的绝对值不超过1。原创 2017-12-10 10:49:24 · 2540 阅读 · 0 评论 -
Leetcode第38题
原创 2017-10-25 21:26:01 · 389 阅读 · 0 评论 -
Leetcode——第21题
Merge Two Sorted Lists 时间复杂度:O(m+n)原创 2017-10-30 21:07:52 · 645 阅读 · 0 评论 -
Leetcode——第88题
这道题和Merge Two Sorted Lists自己做的:时间复杂度为O(n*m*m)别人做的:时间复杂度为O(m+n)用java类库做的,做工程可以,但是为了编程不建议这么做:时间复杂度主要是排序的时间复杂度,即O(nlogn)原创 2017-10-30 20:48:22 · 519 阅读 · 0 评论 -
Leetcode—第70题
爬梯子问题:需要爬一个n阶梯顶,每次可以爬1步或2步,请问有多少中方法?分析:对于第n阶梯子,即顶端,可以1步爬上去,也可以2步爬上去,那么方法数等于两种爬法的总和,即爬上第n-1阶梯子的方法加上爬上第n-2阶梯子的方法,可以得到一个关系式,F(n)=F(n-1)+F(n-2),这个式子就是斐波那契数列的关系式。而对于1阶梯子,F(1)=1,而2阶梯子,F(2)=2原创 2017-10-28 22:37:58 · 486 阅读 · 0 评论 -
Leetcode——第69题
解法1:牛顿法:算法复杂度为O(log(x))2、brute force:暴力求解,时间复杂度为O(sqrt(x))原创 2017-10-28 20:43:36 · 471 阅读 · 0 评论 -
字符串中最长公共子序列和最长公共子串
1、最长公共子序列例:BDCABA和ABCBDAB,最长公共子序列为 BCBA。DP解法:字符串1的长度为length1,字符串2的长度为length2,建立一个二维数组C[length1][length2]用来记录最长公共子序列的长度,状态转移方程为整个状态转移以及二维数组矩阵C为def find_lcseque(s1, s2): # 生成字符串长度加1的0矩阵...原创 2018-12-19 16:10:24 · 923 阅读 · 0 评论