
LeetCode
码农凯凯
看我学渣奋起直追之路
展开
-
LeetCode Easy排序前50道题
771 Jewels and Stones int numJewelsInStones(string J, string S) { int count = 0; for (char c : J) { for (char s : S) { if (c == s) count++; ...原创 2018-01-08 19:59:12 · 899 阅读 · 0 评论 -
Leetcode中股票问题合集
Best Time to Buy and Sell Stock II 思路:这道题用到了贪心算法。从第二天开始,只要比前一天大,那说明就挣钱,那么就前一天买今天卖,挣差价。int maxProfit(vector<int>& prices) { int res = 0; int n = prices.si原创 2018-09-06 16:20:42 · 2715 阅读 · 0 评论 -
LeetCode中动态规划题解合集(根据难易程度))
121.Best Time to Buy and Sell Stock 思路:遍历数组,找到当前位置之前最小的数,然后选择当前买入差值和之前最大值之间的最大值。 int maxProfit(vector<int&原创 2018-08-09 23:22:05 · 17769 阅读 · 2 评论 -
leetcode哈希表hash table集合
1.two sumvector<int> twoSum(vector<int>&原创 2018-07-14 13:36:48 · 509 阅读 · 0 评论 -
LeetCode40-49题解
46.Permutations 思路:很明显,要用DFS。vector<vector<int>> permute(vector<int>& nums) { vector<int&原创 2018-07-06 01:16:47 · 247 阅读 · 0 评论 -
LeetCode41-49
43.Multiply Strings 思路:就是按照我们手算乘法的步骤来解决的,可以看下图,要注意一点下标的标记。 string multiply(string num1, string num2) { int n1 = num1.size(); int n2 = num2.size(); vector<int> temp(n1...原创 2018-07-05 23:10:24 · 265 阅读 · 0 评论 -
leetcode中回溯题集合
77.Combinations 思路:终止和收敛条件是判断out中的个数达到k。图解请详见博客题解。 vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;int&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;a原创 2018-07-09 13:35:24 · 699 阅读 · 0 评论 -
leetcode 30-39
32.Longest Valid Parentheses 思路1:最长有效字符串。用stack存储栈顶的Index,start记录有效字符串开始位置。如果是’(‘,入栈,如果是’)’,判断stack是否为空,如果为空,说明’)’是第一个字符,有效字符串一定不是从这个字符开始的,则start+1;不为空的话,则stack.pop(),如果stack为空,则取res和i - start + 1 的最...原创 2018-06-12 10:44:26 · 497 阅读 · 0 评论 -
leetcode21-30
21 Merge Two Sorted Lists 思路:新建一个链表,比较l1和l2中的值,哪个小就把它加到新的链表中去,最后总会有一个链表先到尾部,那么直接把剩下的链表接到新链表尾部就可以啦,注意链表为空问题判断,必须先初始化。 ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode temp(0)...原创 2018-04-24 11:35:09 · 148 阅读 · 0 评论 -
leetcode11-20
11.Container With Most Water 思路1:暴力搜索,每两个line计算一次area,选择最大的那个。但是超时。 int maxArea(vector<int>& height) { int size = height.size(); if (size < 2) return 0; int w...原创 2018-03-29 21:02:45 · 280 阅读 · 0 评论 -
LeetCode 1-10代码参考
1.Two Sum 思路:见solution vector<int> twoSum(vector<int>& nums, int target) { for (int i = 0;i < nums.size(); i++) { for (int j = i + 1; j < nums.size(); j+...原创 2018-03-05 10:30:09 · 425 阅读 · 0 评论 -
LeetCode贪心题目合集
860.Lemonade Change思路:每次判断收到的钱是5,10,还是20;用five和ten记录拥有的5元和10元个数,如果是5,那么直接five++,如果是10,那么ten++,five–(判断有没有5),如果20,判断有没有10,两种情况。 bool lemonadeChange(vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;int&amp;amp;amp;amp;amp;amp;amp;amp;amp;a原创 2018-10-24 19:57:46 · 2342 阅读 · 0 评论