- 博客(11)
- 资源 (6)
- 收藏
- 关注
原创 Edit Distance
题目大意:求最短编辑距离。解题思路,动态规划用dp[i][j]表示字符串str1的0~i和str2的0~j的最短编辑距离。dp[i][j]只有3个来源:1)dp[i - 1][j] + 1表示str1的0~ i - 1和str2的0~j的最短编辑距离 + 1,表示删除str1的第i个字符;2)dp[i][j - 1] 表示str1的0~i和str2的0~ j - 1的最短编辑距
2015-02-28 19:51:29 386
原创 Populating Next Right Pointers in Each Node II
题目大意:二叉树里面每个节点都有一个next指针,要求使得每个节点的next指针指向这一层的最先遇到的节点。解题思路:宽度遍历。#include #include #include using namespace std;struct TreeLinkNode { int val; TreeLinkNode *left, *right, *next; T
2015-02-27 23:32:02 386
转载 Best Time to Buy and Sell Stock IV
https://gist.github.com/ElninoFong/d08051d98e634991cd93http://www.cnblogs.com/grandyang/p/4295761.html#include #include #include #include #include using namespace std;class Solution {
2015-02-19 22:50:04 4530 3
转载 Largest Rectangle in Histogram
#include #include #include #include #include using namespace std;class Solution {public: int largestRectangleArea(vector &height) { if(height.empty()) return 0; v
2015-02-19 17:31:10 425
转载 Distinct Subsequences
http://fisherlei.blogspot.tw/2012/12/leetcode-distinct-subsequences_19.htmlclass Solution {public: int numDistinct(string S, string T) { if(S.empty()) return 0; if
2015-02-10 00:15:48 479
转载 Scramble String
转自:http://www.cnblogs.com/yuzhangcmu/p/4189152.htmlclass Solution { public: bool isScramble(string s1, string s2) { if(s1.length() != s2.length()) return
2015-02-08 01:56:28 581
原创 Reverse Nodes in k-Group
题目大意:给定一个链表和一个k值,要求把这个链表每段长度为k的节点反转,不够k值长度的片断不反转。解题思路:简单的链表操作,保证O(n)时间完成。#include #include using namespace std;struct ListNode { int val; ListNode *next; ListNode(int x): val(x), next(
2015-02-06 00:41:50 1975
原创 Best Time to Buy and Sell Stock III
题目大意: 有一支股票, 你买入和卖出的机会最多两次,且不能在同一天买进和卖出。让你求最大的收益。解题思路:动态规划。用dp_head[i]表示0~i的序列,股票最多交易一次的最大收益dp_tail[i]表示i~end的序列,股票最多交易一次的最大收益。然后求max(dp_head[i] + dp_tail[i+1]).#include #include #incl
2015-02-05 00:36:30 1595
原创 Best Time to Buy and Sell Stock II
题目大意: 有一支股票, 你买入和卖出的机会不限次数。让你求最大的收益。解题思路:贪心法,求这个序列的每个递增子序列,将这些递增子序列的最大收益和相加就是结果。#include #include #include #include #include using namespace std;class Solution {public: int maxProf
2015-02-04 23:46:03 435
原创 Best Time to Buy and Sell Stock
题目大意: 有一支股票, 你只有顶多一次买入和卖出的机会。让你求最大的收益。解题思路: 遍历这个数组,用当前值减去之前保存的最小值,求这个差值的最大值。#include #include #include #include #include using namespace std;class Solution {public: int maxProfit(v
2015-02-04 22:49:07 486
原创 Binary Tree Maximum Path Sum
题目大意: 一个二叉树,每个节点都有一个整数值(可以为负数), 求这个二叉树,任意两个节点路径所有节点之和的最大值。解题思路:递归求解。#include using namespace std; class Solution {public: int maxPathSum(TreeNode *root) { if(root == NULL)
2015-02-02 23:20:52 539
[现代编译原理C语言描述
2012-08-13
UNIX环境高级编程第二版.
2011-12-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人