摘要:
题目大意:给出n和k,找到1..n这些数组成的有序全排列中的第k个。 首先,n的全排列可以分成n组,每一组由n-1个数组成。 例如 3的全排列,分成三组: 1 2 3 和 1 3 2 2 1 3 和 2 3 1 3 1 2 和 3 2 1 每一组的个数是(n-1)!,每一组的打头的都是i 。第i组以
阅读全文
posted @ 2017-12-10 16:48
newbird2017
阅读(151)
推荐(0)
摘要:
题目链接:https://leetcode.com/problems/trapping-rain-water/description/ 思路: 1、先找到最左侧第一个高度不为0的柱子i。 2、从i+1开始向右侧找另一个柱子max。条件:要么a[max] > a[i],要么a[max] > 右侧所有。
阅读全文
posted @ 2017-12-10 13:57
newbird2017
阅读(101)
推荐(0)
摘要:
这个算法感觉还是很陌生的。算法导论里没有讲这个算法,而数据结构与算法分析只用了一节来阐述。我居然跳过去了。。尴尬。 笨方法解决的: 第一题: 给定一个元素不重复的数组,枚举出他们的全排列。 方法1:递归。 a[0] a[1] a[2]...a[n-1]这些元素的全排列,可以在 a[1]...a[n-
阅读全文
posted @ 2017-12-07 21:59
newbird2017
阅读(141)
推荐(0)
摘要:
https://leetcode.com/problems/combination-sum/discuss/
阅读全文
posted @ 2017-12-07 14:39
newbird2017
阅读(96)
推荐(0)
摘要:
题目大意:给出一个数组,用这些数组里的元素去凑一个target。元素可以重复取用。 感觉对这种题目还是生疏的。脑子里有想法,但是不知道怎么表达出来。 先记录下自己的递归法。应该还可以用循环实现。 回溯:罗列出所有的不重复的可能组合,每次判断:如果超出,放弃。如果不够,继续添加元素。如果刚好,存起来。
阅读全文
posted @ 2017-12-07 12:36
newbird2017
阅读(165)
推荐(0)
摘要:
为什么实现起来这么费劲?是我差在什么地方呢? 看源码的时候,感觉都很合理,但是自己敲就漏洞百出! 各种崩溃和问题。 然后,一直在纠结边界是等于还是小于,是先减一还是先计算。。等等。。 mark一下,一定要好好研究啊!这太浪费时间了!
阅读全文
posted @ 2017-11-29 17:57
newbird2017
阅读(107)
推荐(0)
摘要:
题目没有说明可以更改输入链表,其实有点擦边了。 就谈这个算法,我之前为了定位到中间那个节点,一直是用计数操作。 期间为了精确确定i =0 , i<n/2 这个边界,纠结模拟半天。好费劲啊!这一点太弱了。 人家用了快慢指针的方法,定位到最后,slow就是指向最中间那个(奇数个) 或者中间偏左那个 (偶
阅读全文
posted @ 2017-11-29 12:29
newbird2017
阅读(115)
推荐(0)
摘要:
翻转一个单链表。这个题目听说很多次了,总感觉肯定不是什么难题。 现在真的有点好高骛远了!总感觉那种很难的算法题才是难题,这种题没必要做。其实眼高手低啊。 这种easy题,我都不能一遍ac,这遇到白板编程也是挂的节奏! 仔细分析,每次翻转一个,要记录被反转的这个的前后节点。 1 -> 2 -> 3 -
阅读全文
posted @ 2017-11-29 12:23
newbird2017
阅读(89)
推荐(0)
摘要:
做完这个题目,感觉LeetCode的题目出的真好。。。 这种题,如果让我在面试时候纸上写代码,肯定会挂的。 我昨天晚上看的题目,昨天脑子是懵的,放下了。今天早上来做。 一开始做,提交,果然错了。写的代码如下 这是潜意识里的错误。认为p是指向它的节点,那么p本身就是它前面的节点。这个太容易错了。。。
阅读全文
posted @ 2017-11-29 09:30
newbird2017
阅读(134)
推荐(0)
摘要:
原文链接:https://leetcode.com/problems/generate-parentheses 给出数字n,求n对括号组成的合法字符串。 刚做出来,敲完代码,修改了一次,然后提交,accepted ~ 还是小有成就感的。。菜鸟... 先记录下自己的笨方法。再研究更高妙的方法。 刚看到
阅读全文
posted @ 2017-11-26 19:55
newbird2017
阅读(141)
推荐(0)