自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

蟋蟀的博客

All i learned about CS

  • 博客(5)
  • 收藏
  • 关注

原创 LeetCode 818. Race Car

题解记忆化搜索。这题显然可以化为子问题来考虑的。大体思路:不妨设dp[n]为到达n的最短代码注意可以直接A到且最短的位置为 1,3,7,15, … ,(2^n) -1显然要考虑的情况就是target位于 2^(n-1) -1 ~ (2^n) -1 之间怎么处理这个区间更进一步?两种方法。走到target的后头位置(2^n) -1,此时调头向后走那么还需要走的的最短步数恰好= ...

2018-11-06 15:08:56 294

原创 LeetCode 787. Cheapest Flights Within K Stops

题解这题看似最短路径,但是暗藏变化。首先想到dfs,搜索到所有由始至终的可行路径,记录最小cost即可。但是这题编程实现有很多小花招,怎么剪枝,一个是k(步进的次数),二是cost,都可以用来减小搜索空间。再者,就是贝尔福特算法,非常适合这题,因为此题有个k的限制。当然应用的时候需要修改一点,原本是重复|V|-1次的,此时只要k+1次了。值得注意的是,在每一轮更新dis[]数组的时候...

2018-11-03 13:01:27 274

原创 LeetCode 572. Subtree of Another Tree

题解题很简单但要写得简洁优雅也不容易。给出的代码递归写得非常漂亮。Codebool isSubtree(TreeNode* s, TreeNode* t) { if(!s) return false; if(isSame(s,t)) return true; // 点睛之笔 return isSubtree(s->le...

2018-11-02 11:35:35 323

原创 LeetCode 47. Permutations II

题解算所有的排列,有重复数也差不多,都是用递归法。大概递归思路:顺序对每个位置,交换当前位置到此后的某位置,进入下一递归,当前位置加一。Codevoid per(vector<int> a, int i, int j, vector<vector<int>> &res){ // 注意这个 a 不是传引用 if(i...

2018-11-02 10:59:55 115

原创 LeetCode 92. Reverse Linked List II

题解反转链表大家都会写,但是怎样写得优雅简洁是个问题。这题要求反转一定区间的链表,有一点注意就是起点可能是头结点。pre有可能是null,这不优雅,所以我们新建一个New_head节点代表一个虚拟的头部最后只要return New_head->next就好了。ps:下面贴了两种反转实现,比较一下。Code冒泡式反转链表ListNode* reverseBetween(List...

2018-11-01 11:45:05 129

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除