![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode刷题
取个名字咋这难
这个作者很懒,什么都没留下…
展开
-
1326. 灌溉花园的最少水龙头数目----cpp解法思路
解法一:贪心 思路:每次选一个区间,区间右端可以覆盖当前需要覆盖的最右端,同时该区间能覆盖的最左侧点索引最小。 代码 #include<iostream> #include<vector> #include<map> #include<algorithm> using namespace std; //用于sort函数排序,先根据区间右端排序,再根据区间左端排序 static bool cmp(vector<int>& pre, vec原创 2020-06-18 22:18:28 · 292 阅读 · 0 评论 -
叶值的最小代价生成树-c++解题思路
解法一 暴力法 #####思路:递归,暴力求解 #include<iostream> #include<vector> #include<algorithm> using namespace std; int mctFromLeafValues(vector<int>& arr) { int len = arr.size(); if(len == 1 || len == 0){ return 0; }原创 2020-06-18 11:04:54 · 276 阅读 · 0 评论 -
935. 骑士拨号器--c++解题方法二
935. 骑士拨号器 思路:将0-9分为四个部分:{1,3,7,9},{4,6},{2,8},{0} 代码 #include<map> #include<vector> #include<iostream> using namespace std; //骑士跳“日” long M = 1e9 + 7; //{1,3,7,9},{4,6},{2,8},{0} int knightDialer(int N) { if(N == 1){ retur原创 2020-06-17 17:34:44 · 205 阅读 · 0 评论 -
骑士拨号器-c++解题思路
骑士拨号器-c++解题思路 1.暴力法 思路:每一个号码,是由上面一轮的某个或者某几个号码,通过跳“日”得到的。 代码: #include<map> #include<vector> #include<iostream> using namespace std; //骑士跳“日” long M = 1e9 + 7; int knightDialer(int N) { //N等于1,即只有一步时 if(N == 1){ return .原创 2020-06-17 16:37:58 · 211 阅读 · 0 评论 -
leetcode刷题----20.有效的括号
1.题目描述 2.思路 先给出两个错误的思路: 2.1将字符串s的前一半压入栈和后一半做对比。 bool isValid(string s) { int len=s.length(); if(len==0 || len%2==1) return false; int cir=len/2; stack<ch...原创 2019-04-15 23:25:33 · 149 阅读 · 0 评论 -
leetcode刷题----406.根据身高重建队列
1.题目描述 2.思路 假设用一个向量存储所有的节点,节点的第一个值表示身高,节点的第二个值表示希望排的次序。 思路如下:先将所有节点排序,先按照身高排序,同样身高的按照次序排序。然后用一个map将各个身高的人数记录下来,要记录各个身高的人数是因为同样身高的人中我们先排次序靠后的人,再排次序考前的人,可能会导致次序考后的人的实际次序与期待次序不符,这时记录的某一身高下的人数就起作用了,只要将该节...原创 2019-04-16 14:09:15 · 394 阅读 · 0 评论 -
leetcode刷题之路----140.单词拆分II
@TOC**** 140.单词拆分II 1.题目描述 2.运行结果 3.源码 3.1第一次失败且复杂的尝试 思路:根据wordDict中的字符串去源字符串s头部开始查找,一旦找到,从s的头部删除找到的对应字符串,并用一个临时字符串finded保存已经匹配的字符串,重复前面步骤,如果源字符串s能删除完的话,说明找到了一种划分方法,将finded存入最终要返回的向量res中。 #include ...原创 2019-04-13 16:29:43 · 358 阅读 · 0 评论 -
leetcode刷题----904.水果成篮
1.题目描述 2.思路 这题类似于求有两个字符的最长子串。 用一个向量lens记录下标为i的有两种水果的长度,最后输出lens中的最大值即可。 怎么求lens[i]的值呢?这里我们需要两个变量basket1,basket2记录水果的类型,两个变量index1,index2当出现第三种水果类型时可能需要切换的前两种水果的下标。 从左到右遍历tree数组,得到其中的一个元素tree[i]。 1.当...原创 2019-04-16 18:32:31 · 554 阅读 · 0 评论