![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
YenKoc
最弱CTFer,博客已搬到博客园去了,csdn不再更新,希望别真香
展开
-
leetcode 字符串转换整数 (模拟)
思路分析1.跟着题意模拟,分成几种情况来看待2.一种全是空格3.有可能有空格,然后有符号的4.有可能有空格,无符号数字5.有可能有空格,非数字开头6.最后还需要考虑一个越界的问题,所以要除以10来判断代码:class Solution {public: int myAtoi(string str) { int i=0,sum=0; in...原创 2020-04-03 00:48:45 · 186 阅读 · 0 评论 -
leetcode147对链表进行插入排序
题目:对链表进行插入排序。 插入排序算法:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。重复直到所有输入数据插入完为止。 示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: ...原创 2020-03-15 22:16:37 · 158 阅读 · 0 评论 -
leetcode 数组分成和相等的三个部分
题目:给你一个整数数组 A,只有可以将其划分为三个和相等的非空部分时才返回 true,否则返回 false。形式上,如果可以找出索引 i+1 < j 且满足 (A[0] + A[1] + ... + A[i] == A[i+1] + A[i+2]+ ... + A[j-1] == A[j] + A[j-1] + ... + A[A.length - 1]) 就可以将数组三等分。思...原创 2020-03-11 17:55:20 · 165 阅读 · 0 评论 -
Leetcode547 朋友圈解题报告 (DFS
题目描述:班上有 N 名学生。其中有些人是朋友,有些则不是。他们的友谊具有是传递性。如果已知 A 是 B 的朋友,B 是 C 的朋友,那么我们可以认为 A 也是 C 的朋友。所谓的朋友圈,是指所有朋友的集合。给定一个 N * N 的矩阵 M,表示班级中学生之间的朋友关系。如果M[i][j] = 1,表示已知第 i 个和 j 个学生互为朋友关系,否则为不知道。你必须输出所有学生中的已知的朋友圈...原创 2020-02-07 16:49:54 · 259 阅读 · 0 评论 -
Leetcode 递归题
24. 两两交换链表中的节点题目描述:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例:给定 1->2->3->4, 你应该返回 2->1->4->3.思路分析:1.链表和树的结构很适合递归,可以往这方面去想。2.递归首先先想着结束的条件是啥。3.之...原创 2020-02-04 22:01:58 · 225 阅读 · 0 评论 -
leetcode TOP100 比特位计数
338. 比特位计数题目描述: `给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。示例 1:输入: 2输出: [0,1,1]示例 2:输入: 5输出: [0,1,1,2,1,2]思路描述:TIPs:别用暴力,超时…1.先观察数字,首先奇数的二进制位最后一位一定为1,例子如3,5,...原创 2020-02-03 16:36:57 · 173 阅读 · 0 评论 -
滑动窗口通用解leetcode字符串匹配问题
滑动窗口,这玩意解决一些字符串匹配的题目是真的挺好用的,虽然本质还是双指针。思路:1.维护一个窗口,不断的向右边移动2.满足要求后,移动左边,当不满足时,跳出。3.重复1,2.得出答案。下面有两题leetcode题,一道困难一道中等,现在看来还挺简单的,23333另外STL的unordered_map的count方法,是验证key值是否存在。同时如果key值不存在,新加的key...原创 2020-02-03 16:25:12 · 670 阅读 · 0 评论 -
leetcode TOP100 两数相加
两数相加给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-num...原创 2020-02-02 09:36:22 · 224 阅读 · 0 评论 -
leetcode TOP100 字母异位词分组
字母异位词分组给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。思路:一个map,将每个字符串字符进行记数,字符作为map的key,次数初始为零,以此来标识字符串另外一个map是通过上一个map来作为key,添加字符串。具体看代码。空间和效率都不咋地,23333、class Solution {public: vector<vec...原创 2020-02-01 23:00:02 · 146 阅读 · 0 评论 -
二叉树的子树和子结构
子树的意思是包含了一个结点,就得包含这个结点下的所有节点,一棵大小为n的二叉树有n个子树,就是分别以每个结点为根的子树。子结构的意思是包含了一个结点,可以只取左子树或者右子树,或者都不取。直接上代码。这解释起来也蛋疼。一.一个二叉树树是另一二叉树的子结构。class Solution: public: bool isSubtree(TreeNode* pRoot1,TreeNode*...原创 2020-01-21 11:31:32 · 1356 阅读 · 0 评论 -
LeetCode周赛5214
我去,暴力超时,没啥人情味了。难受,一看答案,结果是dp的题目。。。思路分析:1.用个表记录下每个数当前的最大长度,同时是等差,说明有上一个数,那么当前的长度就是上一个数最大加一...原创 2019-10-07 22:35:39 · 93 阅读 · 0 评论 -
leetcode第157场周赛5213
当时居然没想到,我真菜,就当记录一下了。思路分析:分为两种:第一种:走两步的,无论是奇或偶的位置,只要走两步,代价为0;第二种:走一步的,就是偶数到奇数,或者奇数到偶数,代价为1;那么实际上,到最后,可以因为代价为0的走法,直接变成了,一个偶数和邻近的一个奇数了(恐怖如斯)转化成了奇数多,还是偶数多的问题了。贴下代码:...原创 2019-10-07 20:49:53 · 228 阅读 · 0 评论 -
leetcode1047
思路分析,这题是在栈分类的题目的,所以顺便复习下数据结构,先用java现成的,就当复习了。1.判断栈顶和插入的元素是否相等,如果相等,那就出栈,不相等入栈结束java版:...原创 2019-10-03 22:09:27 · 291 阅读 · 0 评论 -
leetcode156场周赛5206
思路分析:1.两个数组,一个保存字符,一个保存字符出现次数2.遍历一遍字符串,出现相同的字符,次数加一,且次数到k的话,那么就剔除,没到k,就次数加一。如果不同,就把它加入到字符的数组里面,对应次数加一。3.结束后,把数组连接起来就是答案了...原创 2019-09-30 00:57:05 · 103 阅读 · 0 评论 -
leetcode第156场周赛5207
当时做的时候,一直理解想搞dp,后面可能思路有点乱了,写不出来。。。看了评论区的大佬,才发现是滑动窗口的题目,学习到了。思路分析:1.这题可以转化成求数组最大子数组的和不超过maxCost的长度2.每次查找就更新一次,循环完之后,就是最大的了,滑动窗口安排。贴上代码...原创 2019-09-30 00:13:24 · 159 阅读 · 0 评论 -
leetcode第156场周赛5205
思路分析:先用哈希表统计各个数字的次数,再将每个值放进set集合中,之后如果有重复得,说明比原个数少了,如果都是独一无二的,那么个数是相同的这波把collection集合,强转成set是真的灵性。想不到的,就自己构造一个set集合。...原创 2019-09-29 15:43:36 · 132 阅读 · 0 评论 -
leetcode1029
思路分析:1.先让2N个全去A2.再让N个更换行程去B,这时候会有额外的费用cost[0][1]-cost[0][0](有正有负)3.要挑选额外费用低的N个人去B原创 2019-09-27 21:57:18 · 144 阅读 · 0 评论 -
leetcode 1122
思路分析:主要思想:计数排序先遍历arr1,然后计数,再遍历arr2时同时又排完序了,再继续把arr2不存在的数字,再遍历加到数组后面,也同时排完序了。方便快捷...原创 2019-09-27 00:51:19 · 232 阅读 · 0 评论 -
leetcode860
柠檬水找零这是属于贪心算法那栏的。。下午刚看过思想,结果一看题目,懵逼,还是得多刷题。。思路分析下。贪心策略:由题目可知只有两种情况需要找零,一种是10元时,这时候你可以用5元去找零,一种是20元,这时候你可以选择用10元+5元方式或者用5+5+5去找零,这时候在面对20元时,你需要先使用10元+5元方式去找,这样先节省出5元纸币,这样可以尽可能避免10元的时候没有5元去找的情况(局部最优...原创 2019-09-25 23:06:40 · 153 阅读 · 0 评论