摘要: 题目链接 股票价格跨度 注意事项 使用单调栈 代码 class StockSpanner { public: StockSpanner() { this->stk.emplace(-1, INT_MAX); this->idx = -1; } int next(int price) { idx++; 阅读全文
posted @ 2022-10-23 09:48 Frodo1124 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 创建conda环境 conda create --name firstEnv 激活环境并安装软件包 conda activate firstEnv conda install scikit-learn 安装和配置ipykernel conda install -c conda-forge ipyke 阅读全文
posted @ 2022-10-07 10:30 Frodo1124 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 题目链接 672. 灯泡开关 Ⅱ 思路 根据题意,我们先找到每个开关影响的灯 如图所示,两个虚框的灯的状态完全一致,因此我们任意取一盏灯i,则i的状态和i + 6的状态完全一致,所以灯的状态的周期T = 6 因此我们只需要观察前六盏灯的状态。 我们设六盏灯的编号为6k+1、6k+2、6k+3、6k+ 阅读全文
posted @ 2022-09-15 13:01 Frodo1124 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 题目链接 652. 寻找重复的子树 注意事项 将一颗子树按照先序遍历的方式组装成一个字符串,方便进行比较。 使用unordered_map进行数量判断。 代码 /** * Definition for a binary tree node. * struct TreeNode { * int val 阅读全文
posted @ 2022-09-05 19:15 Frodo1124 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 题目链接 注意事项 根据满二叉树的节点编号规则:若根节点编号为 u,则其左子节点编号为 u << 1,其右节点编号为 u << 1 | 1。 一个朴素的想法是:我们在 DFS过程中使用两个哈希表分别记录每层深度中的最小节点编号和最大节点编号,两者距离即是当前层的宽度,最终所有层数中的最大宽度即是答案 阅读全文
posted @ 2022-08-27 23:55 Frodo1124 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 题目链接 745. 前缀和后缀搜索 注意事项 预先计算出每个单词的前缀后缀组合可能性,用特殊符号连接,作为键,对应的最大下标作为值保存入哈希表。检索时,同样用特殊符号连接前后缀,在哈希表中进行搜索。 代码 #include <bits/stdc++.h> using namespace std; c 阅读全文
posted @ 2022-08-26 17:43 Frodo1124 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 题目链接 565. 数组嵌套 注意事项 题面形式类似于并查集,每个元素都是从i到nums[i]的有向边,相连的元素形成一条链。 从一个元素切入,然后一直走到对应链的末尾,统计这条链上的数目。统计完再换下一条链统计。一直到所有元素都被访问过。 代码 class Solution { public: i 阅读全文
posted @ 2022-08-26 17:40 Frodo1124 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 题目链接 1438. 绝对差不超过限制的最长连续子数组 注意事项 multiset中取最大值:rebegin multiset中取最小值:begin 代码 class Solution { public: int longestSubarray(vector<int>& nums, int limi 阅读全文
posted @ 2022-08-26 17:39 Frodo1124 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 题目链接 919. 完全二叉树插入器 注意事项 在构建该数据结构的时候,可以使用两个队列,来找到完全二叉树不含两个子结点的结点 代码 class CBTInserter { private: queue<TreeNode*> q; TreeNode* root; public: CBTInserte 阅读全文
posted @ 2022-08-26 17:37 Frodo1124 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 题目链接 1302. 层数最深叶子节点的和 注意事项 要用非递归的方式求二叉树深度(即层次遍历BFS) 代码 class Solution { public: int deepestLeavesSum(TreeNode* root) { vector<pair<int, int>> nodes; i 阅读全文
posted @ 2022-08-26 17:34 Frodo1124 阅读(18) 评论(0) 推荐(0) 编辑