随笔分类 -  leetcode

leetcode 215(分治,求第k大元素)
摘要:这道题用的是老师上课讲的最坏时间复杂度为O(n)的算法,即BFPTR算法,简单来说就是给一个数组,然后将其划分为5个一组,然后剩下的为一组,然后将其放到一个数组继续递归,直到不足五个时返回中位数,然后我们用这个中位数作为基准进行分治,将大于该数的放在右边,小于的放在左边,然后比较k和基准的位置,相同 阅读全文

posted @ 2019-03-09 16:04 QingFengDaHui 阅读(292) 评论(0) 推荐(0)

leetcode 166(分数转化位小数)
摘要:string fractionToDecimal(int numerator, int denominator) { long long n=numerator,d=denominator; string ans=""; map m; if(n*d<0) ans+="-"; n=abs(n);... 阅读全文

posted @ 2019-02-28 21:32 QingFengDaHui 阅读(226) 评论(0) 推荐(0)

leetcode 279 (数学 or dp)
摘要:利用四平方和定理,即每个正整数都可以由至多4个整数的平方和相加得到, 并且当该数由四个组成时,n=4^a*(8*b+7);所以我们可以先不断除以四缩小n,因为4是平方数,所以除以4不影响结果,然后判断即可。 阅读全文

posted @ 2019-02-28 20:17 QingFengDaHui 阅读(186) 评论(0) 推荐(0)

导航