02 2021 档案

摘要:仅供自己学习 思路: 最容易想到的就是对每个点DFS并记录长度,但是会超时,所以只能对数据进行剪枝处理。 这个解法必须明确是在对树操作。我们将树中度为1的结点去掉,是同时去掉,因为这样不会改变树整体的长度比较的结果,相当于每个节点作为根节点的长度-1,如果不能同时去掉,那么就会导致长度的改变,这样就 阅读全文
posted @ 2021-02-28 21:30 Mrsdwang 阅读(55) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 题目给出的 prerequisites 实际可以转化为一个有向图,那么既然有明确的先后顺序排列才能完成课程学习,这就要求这组数据组成的图不能是有向有环图,所以应该往DFS和BFS想,只要搜索整张图没有发现环,那么就可以输出true,否则输出false。按照题目所说,prereq 阅读全文
posted @ 2021-02-28 15:31 Mrsdwang 阅读(56) 评论(0) 推荐(0)
摘要:转自:https://zhidao.baidu.com/question/403046727.html 1.capacity 指容器在分配新的存储空间之前能存储的元素总数。 2. size 指当前容器所存储的元素个数 resize(),设置大小bai(dusize);reserve(),设置zhi量 阅读全文
posted @ 2021-02-28 10:24 Mrsdwang 阅读(132) 评论(0) 推荐(0)
摘要:在leetcode的评论看到的一段话,虽然还不是特别懂但是先记录下来。 课本上总说deep copy和shallow copy,似懂非懂的,不觉得这东西有什么用。慢慢地,发现deep copy背后隐藏的逻辑其实是一种对象图(Object Graph)的遍历行为——这东西广泛出现在各语言的垃圾回收、序 阅读全文
posted @ 2021-02-26 01:45 Mrsdwang 阅读(47) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: DFS:因为图存在循环的情况,如果对每个点的neighbors进行DFS就会进入死循环,所以需要一个结构进行记录克隆过的点,当访问到克隆过的点就返回这个克隆的节点,所以还需要一个数据结构存储克隆的点。我们使用unordered_map的数据结构,value用于存储克隆得到的点, 阅读全文
posted @ 2021-02-26 01:40 Mrsdwang 阅读(64) 评论(0) 推荐(0)
摘要:仅供自己学习 这是贪心可以解决的问题。我们遍历每个加油站,并且贪心的标准是 sum_gas - sum_cost >0,否则start 起点得加一。又因为不管从哪个加油站开始,绕一圈得到的 sum_gas - sum_cost都是相同的,所以如果是一个可以回到起点的数据,那么 就会大一0,否则就会小 阅读全文
posted @ 2021-02-24 15:20 Mrsdwang 阅读(132) 评论(0) 推荐(0)
摘要:仅供自己学习 第一想法就是直接判断对角的元素是否相同,但是做的方法是往右下对比,只对第一行和第一列的每个元素进行比较,但是发现对列进行的时候有错误不知道咋解决。 但如果对除了第一排和第一列的元素外,遍历剩下的元素,这样可以避免比较边角的元素,且所有元素都能进行判断。 代码: 1 class Solu 阅读全文
posted @ 2021-02-22 15:14 Mrsdwang 阅读(63) 评论(0) 推荐(0)
摘要:仅供自己学习 也是一种滑动窗口的思想,而左指针右移的条件是子串最大值与最小值之差 > limit时就将left相加。而主要的时间消耗是寻找字串的最大值和最小值,需要一个合适的数据结构。这里用的一个multiset,基于红黑树的平衡搜索二叉树,是可以存放重复的元素的从小到大排列的序列。主要的方法就是, 阅读全文
posted @ 2021-02-21 23:27 Mrsdwang 阅读(98) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 如何才能判断能走到最后一个下标呢,应该就是X= i+nums[i]>=nums.size()-1。所以我们遍历nums,每次都取 i+nums[i]最大的,如果 满足大于等于的条件就可以,但遍历的前提是,X > i,因为决定是否能到达最后的下标是由当前位置和当前元素的大小决定的 阅读全文
posted @ 2021-02-19 22:22 Mrsdwang 阅读(58) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 又是滑动窗口的问题,只要right右移遇到0时就 count+1,当count+1> K时,就将left右移,当left遇到0时,就将count-1,当count=K时 left和right指向同一个位置,此时right再次右移重复上述步骤,直到right=A.size-1. 阅读全文
posted @ 2021-02-19 19:29 Mrsdwang 阅读(56) 评论(0) 推荐(0)
摘要:仅供自己学习 思路:题目的意思寻找有多少块全是 ‘1’的区域,即搜索 ‘1’直到其周围全是0为一个 计数。考虑使用BFS,从一个1向四周扩散的寻找。 首先判断grid是否为空,即行数是否为0,是则返回0。否则获取grid行列数。用两个for循环遍历所有的方格,用一个队列存储为‘1’的方格,每次找到一 阅读全文
posted @ 2021-02-19 18:35 Mrsdwang 阅读(63) 评论(0) 推荐(0)
摘要:仅供自己学习 直接和编号102的题一样的思路,直接最后reverse就行,基本得BFS方法即可 代码: 1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left 阅读全文
posted @ 2021-02-17 20:46 Mrsdwang 阅读(42) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 前面做过102,题目几乎相同,只是输出的方式不同,下意识BFS就选择了队列,但是发现不能解决,因为是单向取单向入得结构,不能从满足一左一右的输出形式。上课的时候了解到一个双端队列,刚好可以满足,只需要一个标记此时是左输出还是右输出即可。当时只想用一个双端队列即可,但是发现写着还 阅读全文
posted @ 2021-02-17 00:13 Mrsdwang 阅读(50) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 因为题目说不能使用额外的空间,那么只能在原数组进行操作。因为数组的大小为n,所以即使少了一些 1~n的元素,但数组的下标仍然存在,那么我们就可以考虑通过下标来判断哪些元素不存在。因为我们的元素都小于等于n,所以元素-1作为下标并且对该下标的元素进行加n,当数组遍历完成后,存在的 阅读全文
posted @ 2021-02-13 15:49 Mrsdwang 阅读(62) 评论(0) 推荐(0)
摘要:恢复内容开始 仅供自己学习 思路: 还是滑动窗口,但是这里,因为他的排列不一定和s1的一样,所以要考虑怎么判断s2有s1的排列。这里考虑转化成对每个字母的计数来进行判断,这样就可不关心s2是如何排列的了,当我们将s1的每个字母计数后,再将s2中 s1.length长度的子串计数,判断是否一样,不一样 阅读全文
posted @ 2021-02-11 17:40 Mrsdwang 阅读(53) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: BFS: 看到这题就会有一个疑问,当往下后结点越来越多要怎么在只加入root->left和root->right的情况下获得一层所有的结点呢。考虑到用一个数据结构存储,每次取出一个就加入取出的结点的左右子树进数据结构并且位于最后,由此考虑到用队列。那这样就有一个问题,我们怎么区 阅读全文
posted @ 2021-02-09 21:10 Mrsdwang 阅读(56) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 递归:判断是否镜像,那就每次用左子树的左子树与右子树的右子树 and 左子树的右子树和右子树的左子树进行是否相等的判断即可。因此我们可以写一个比较函数,传入的root就是前面所说的几种情况。 比较函数什么时候返回true什么时候返回false呢,如果我们在一条路下去的中途出现了 阅读全文
posted @ 2021-02-09 19:19 Mrsdwang 阅读(45) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 这种遍历全部可能的题都可用回朔法解决,做了挺多道了,有了大体的模板,但一些细节,如什么时候返回结果,返回的条件应该是什么,什么时候加入一种组合到结果里面,需要特别分析,这里我们是没进入回朔函数就将一种组合加入到结果里面,回朔结束就pop掉新加入得元素,又通过for循环将下一个新 阅读全文
posted @ 2021-02-09 17:01 Mrsdwang 阅读(50) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 在学二分法,想到用二分法来做,从1-num这个范围进行二分,每次判断 mid*mid是否等于num,相当于找最后一个平方和不大于num的数,如果存在则这个数的平方和就为num,不存在退出循环并返回FALSE即可,其余就是二分法的模板写法。 代码: 1 class Solutio 阅读全文
posted @ 2021-02-08 18:02 Mrsdwang 阅读(49) 评论(0) 推荐(0)
摘要:j仅供自己学习 思路: 把其中一个数组存入hash表,然后直接查看另一个数组的元素是否也在hash表中,有就加入新的hash表。为什么不是vector中呢,因为这样会添加重复的相同元素进去,所以set具有除重复的特性。 代码 1 class Solution { 2 public: 3 vector 阅读全文
posted @ 2021-02-08 14:00 Mrsdwang 阅读(40) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 1.很明显,又是滑动窗口的题,只要 if判断能满足 ><,或<>就让右指针右移一个元素,并且记录长度 right-left+1。如果不满足则 left = right,再重复上述步骤 代码: 1 class Solution { 2 public: 3 int maxTurbu 阅读全文
posted @ 2021-02-08 11:26 Mrsdwang 阅读(50) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 因为之前做了滑动窗口的题,可以用来求连续子串的最大值,最小值,那么是不是可以换一个方向,因为从两侧取值不连续,但我们可以取 在中部取连续的 s-k个数,并且求最小值,再用所有数字和减去最小值即可得到从两侧取到最大的值了。其中s为一系列数的个数。 1 class Solution 阅读全文
posted @ 2021-02-06 11:46 Mrsdwang 阅读(92) 评论(0) 推荐(0)
摘要:仅供自己学习 思路: 题目要求最终的链表是按先序遍历的顺序排序,但如果用先序遍历,会导致右孩子丢失,所以后序的方法,自底向上来移动,那么下意识会想到对左子树DFS直到没有左子树。再将该节点的左子树放到该节点右子树位置,再将原右子树放到新右子树的右子树位置即可。 代码 1 /** 2 * Defini 阅读全文
posted @ 2021-02-05 00:50 Mrsdwang 阅读(48) 评论(0) 推荐(0)
摘要:仅供自己学习 题目: Given an array consisting of n integers, find the contiguous subarray of given length k that has the maximum average value. And you need to 阅读全文
posted @ 2021-02-04 22:11 Mrsdwang 阅读(40) 评论(0) 推荐(0)
摘要:仅供自己学习 题目: You are given a perfect binary tree where all leaves are on the same level, and every parent has two children. The binary tree has the foll 阅读全文
posted @ 2021-02-03 21:42 Mrsdwang 阅读(83) 评论(0) 推荐(0)
摘要:仅供自己学习 题目: Invert a binary tree. Example: Input: 4 / \ 2 7 / \ / \1 3 6 9Output: 4 / \ 7 2 / \ / \9 6 3 1 思路: 这就是直接交换数据就可以了,可以前序遍历,后序遍历,中序遍历的交换 代码: 前序 阅读全文
posted @ 2021-02-03 12:03 Mrsdwang 阅读(56) 评论(0) 推荐(0)
摘要:仅供自己学习 题目: Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. You may return the answer in any order. Example 1 阅读全文
posted @ 2021-02-03 11:07 Mrsdwang 阅读(63) 评论(0) 推荐(0)
摘要:仅供自己学习 题目: Given a string s that consists of only uppercase English letters, you can perform at most k operations on that string. In one operation, yo 阅读全文
posted @ 2021-02-02 21:54 Mrsdwang 阅读(51) 评论(0) 推荐(0)
摘要:仅供自己学习 题目: Alice and Bob have candy bars of different sizes: A[i] is the size of the i-th bar of candy that Alice has, and B[j] is the size of the j-t 阅读全文
posted @ 2021-02-01 22:17 Mrsdwang 阅读(67) 评论(0) 推荐(0)