随想录 队列 训练营 随想

2023/09/21 图论专题训练

本文同步发表于 洛谷博客 CF915D Almost Acyclic Graph 签到题。 考虑暴力删边,拓扑排序判环,时间复杂度:\(O(m\times(n+m))\)。会炸。 注意到拓扑排序的性质:不关心具体删了哪条边,只关心入度。 所以暴力删边变成暴力减度数。时间复杂度:\(O(n\times ......
专题 2023 09 21

SS秋季训练1

https://vjudge.net/contest/579844 A source: Gym104420D 位运算构造,超过一定范围必定无解。 打表找规律 B source: Gym104420E 考虑每个数只被拿一次意味着只会走成一个区间并拿走区间里的数,预处理左/右走出去再回来的最大值,前后缀 ......

说明是延迟队列(死信交换机)

延迟队列:延迟队列就是由死信交换机+消息的存活时间(TTL)实现的,如果队列中的消息超时未消费,就会将这个消息投递到死信交换机,死信交换机还可以绑定其它队列,在我们发消 息的时候可以按照需求指定TTL的时间,这样就实现了延迟队列的功能了。 ......
死信 队列 交换机

代码随想录算法训练营-贪心算法-5|56. 合并区间、738. 单调递增的数字、968. 监控二叉树

56. 合并区间 时间复杂度: O(nlogn) 空间复杂度: O(logn),排序需要的空间开销 1 class Solution: 2 def merge(self, intervals): 3 result = [] 4 if len(intervals) == 0: 5 return res ......
算法 随想录 训练营 区间 随想

[代码随想录]Day50-单调栈part01

题目: 思路: 要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了 代码: func dailyTemperatures(num []int) []int { res := make([]int, len(num)) stack := []int{} fo ......
随想录 随想 代码 part Day

代码随想录算法训练营day14| ● 二叉树理论基础 ● 递归遍历 ● 迭代遍历 ● 统一迭代

二叉树理论基础 二叉树的种类 满二叉树 | 完美二叉树:没有缺少的结点,叶子结点也全满 完全二叉树:只有最底层结点没满,但必须从左到右连续。(满二叉树是特殊的完全二叉树) 二叉搜索树:左小右大 平衡二叉搜索树: 左右子树的高度差 Δh <= 1 二叉树的存储方式: 链式存储:链表 **顺序存储: * ......
随想录 训练营 随想 算法 理论

代码随想录算法训练营day15 | ● 层序遍历 10 ● 226.翻转二叉树 ● 101.对称二叉树 2

层序遍历 102.二叉树的层序遍历 class Solution { public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vector<int>> result; queue<TreeNode*> que; if(root ......
随想录 训练营 随想 算法 代码

代码随想录算法训练营day16 | ● 104.二叉树的最大深度 559.n叉树的最大深度 ● 111.二叉树的最小深度 ● 222.完全二叉树的节点个数

104.二叉树的最大深度 后序遍历法 class Solution { public: int getdepth(TreeNode* node){ if(node == NULL) return 0; int leftdepth = getdepth(node->left); int rightde ......
深度 随想录 训练营 节点 随想

【题解】集训队互测 2018 完美的队列

假设 \(n,m\) 同阶。 我们实际要做的是,对于一个 \(i\) 时间的 \(\mathbf{push}\) 操作 \(l,r,x\) 找到其被清空的时间 \(j\),这样在 \([i,j)\) 这一段 \(x\) 就是存在的。最后只要合并相同 \(x\) 的区间即可。 将 \(l,r,x\) ......
集训队 题解 队列 2018

About 单调队列优化多重背包

20230921 About 单调队列优化多重背包 前言 之前打了给代码,隐隐约约知道了意思。 但不完全明白~ 于是经过自己的钻研,终于理解。 模板题(P1776 宝物筛选) Statement 传送门 01 背包中每个数只能选一次改成可以选 \(s_i\) 次。 Solution 直接 dp 可以 ......
队列 背包 About

文本数据预处理(二)用于大预言模型训练

收集好的txt数据要先过滤一下,删掉无效信息。然后再按下面步骤处理 class DataPreprocessor(): '''def __init__(self, vocab_file, longest_sentence): self.tok = BertTokenizer(vocab_file) ......
预言 模型 文本 数据

CWOI NOIP 真题训练专题

链接:link 希望能苟到这些题发挥用处的时候。 A - 排水系统 topsort。 B - 报数 埃筛。 C - 种花 模拟。 D - 涂色游戏 link E - 字符串匹配 我会 hashing!考虑枚举 \(AB\) 和 \(i\),hash 判断是否相同,于是 \(C\) 是剩下的,可以得到 ......
真题 专题 CWOI NOIP

[代码随想录]Day49-动态规划part17

题目:647. 回文子串 思路: 整体上是两种,就是s[i]与s[j]相等,s[i]与s[j]不相等这两种。 当s[i]与s[j]不相等,那没啥好说的了,dp[i][j]一定是false。 当s[i]与s[j]相等时,这就复杂一些了,有如下三种情况 情况一:下标i 与 j相同,同一个字符例如a,当然 ......
随想录 随想 代码 动态 part

优先队列

priority_queue<int> q;//大根堆priority_queue<int,vector<int>,greater<int> >q;//小根堆 q.top()//取得堆顶元素,并不会弹出 q.pop()//弹出堆顶元素 q.push()//往堆里面插入一个元素 q.empty()// ......
队列

21_消息队列

消息队列 消息队列 1、任务级队列处理函数 2、中断级队列处理函数(带中断保护)已经在CMSIS接口中封装 但写入生产速度比消费速度快的时候,容易出现数据被覆盖 邮箱队列 创建、发送、接收、查询、删除 传数值 osEvent event = osMessageGet(myQueue01Handle, ......
队列 消息 21

阻塞队列

生产者消费者概念 生产者消费者是设计模式的一种。让生产者和消费者基于一个容器来解决强耦合问题。 生产者 消费者彼此之间不会直接通讯的,而是通过一个容器(队列)进行通讯。 所以生产者生产完数据后扔到容器中,不通用等待消费者来处理。 消费者不需要去找生产者要数据,直接从容器中获取即可。 而这种容器最常用 ......
队列

算法训练day14 二叉树递归遍历、迭代遍历、统一遍历

算法训练day14 二叉树递归遍历、迭代遍历、统一遍历 递归遍历 144. 二叉树的前序遍历 - 力扣(LeetCode) 94. 二叉树的中序遍历 - 力扣(LeetCode) 145. 二叉树的后序遍历 - 力扣(LeetCode) 代码随想录 (programmercarl.com) 先序遍历 ......
算法 day 14

priority_queue(优先队列)

优先队列底层模板:priority<type,container,function>,type:元素数据类型,container:容器一般是vector, function:比较函数 优先队列默认是大根堆,即堆顶元素为最大值:定义方法为 priority_queue<type>q或priority< ......
队列 priority_queue priority queue

Spring Boot + Disruptor 实现消息队列,告诉你什么叫快、什么叫高效!

01、背景 工作中遇到项目使用Disruptor做消息队列,对你没看错,不是Kafka,也不是rabbitmq;Disruptor有个最大的优点就是快,还有一点它是开源的哦,下面做个简单的记录. 02、Disruptor介绍 Disruptor 是英国外汇交易公司LMAX开发的一个高性能队列,研发的 ......
队列 Disruptor 消息 Spring Boot

消息队列 - RabbitMQ

RabbitMQ简介 RabbitMQ 是一个广泛使用的开源消息队列系统,它实现了高级消息队列协议(AMQP)标准,为分布式应用程序提供了强大的消息传递功能。RabbitMQ 是 Erlang 语言编写的,具有高度的可扩展性和可靠性,因此被广泛用于构建分布式、异步的消息通信系统。 以下是关于 Rab ......
队列 RabbitMQ 消息

[代码随想录]Day48-动态规划part16

题目:583. 两个字符串的删除操作 思路: 还是最长公共子序列,假设最长公共子序列长度是l;那么需要删除的次数是len(s1) - l + len(s2) - l 代码: func minDistance(word1 string, word2 string) int { lens1 := len ......
随想录 随想 代码 动态 part

算法训练day13 LeetCode 239

算法训练day13 LeetCode 239.滑动窗口最大值347.前k个高频元素 239.滑动窗口最大值 题目 239. 滑动窗口最大值 - 力扣(LeetCode) 题解 代码随想录 (programmercarl.com) class Solution { private: class MyQ ......
算法 LeetCode day 239 13

代码随想录算法训练营第十一天

代码随想录算法训练营第十一天 | LeetCode 239(滑动窗口最大值) LeetCode 347(前K个高频元素) 239: 滑动窗口最大值 LeetCode 239(滑动窗口最大值) import java.util.Deque; import java.util.LinkedList; c ......
随想录 训练营 随想 算法 代码

GPT——生成式预训练Transformer

GPT最近很火呀,那什么是GPT呢? 机器学习领域有个很好的模型叫 Transformer注意力模型,然后在此基础上发展出了包括GPT、BERT、GPT2.0以及GPT3.0等等。其发展历程大概是: (1)2018年,OpenAI基于Transformer提出了GPT; (2)2018年,Googl ......
Transformer GPT

## day13 - 栈与队列part03

day13 - 栈与队列part03 力扣239. 滑动窗口的最大值 思路:利用单调队列,很难想的出来。 因为每次是进一个数,弹出一个数,因此没必要每次都进行排序,只需要拿到最大值即可。 用单调队列实现,是一个双向队列 pop()函数:如果要pop的值是队列头部的值,那么就弹出,否则不操作。 pus ......
队列 part day 13 03

罗永浩讽刺 iPhone “那么伟大又那么不要脸”;北欧囚犯正在训练 AI 大模型;ChatGPT 治怪病丨RTE开发者日报 Vol.51

开发者朋友们大家好: 这里是「RTE 开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE (Real Time Engagement) 领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑的个人观点,欢迎大家留 ......
囚犯 开发者 模型 正在 ChatGPT

## day11 - 栈与队列part02

day11 - 栈与队列part02 力扣20. 有效的括号 思路: 利用栈的特性,遇见左括号就把右括号压栈,遇见右括号,就对比和栈顶元素是否相同,不同就返回false。 代码 class Solution { public: stack<int> st; bool isValid(string s ......
队列 part day 11 02

## day10 - 栈与队列 part01

day10 - 栈与队列 part01 力扣232. 用栈实现队列 思路:建立一个输入栈,一个输出栈,每次push进队列时,放进输入栈,出队列时,从输出栈弹出,如果输出栈是空的,就把输入栈的全部数都弹出到输出栈。 代码 class MyQueue { public: MyQueue() { } vo ......
队列 part day 10 01

代码随想录算法训练营-贪心算法-4|406. 根据身高重建队列、452. 用最少数量的箭引爆气球

406. 根据身高重建队列 1. 一定要想如何确定一个维度,然后再按照另一个维度重新排列。 2. 先确定身高的维度,降序排列。 3. 按照身高排序之后,优先按身高高的people的k来插入,后序插入节点也不会影响前面已经插入的节点,最终按照k的规则完成了队列。 4. 局部最优:优先按身高高的peop ......
算法 随想录 队列 训练营 气球

代码随想录算法训练营day13| ● 239. 滑动窗口最大值 ● 347.前 K 个高频元素 ● 总结

239.滑动窗口最大值 mydemo--(自己思路)--failed 超出时间限制 class Solution { public: vector<int> maxSlidingWindow(vector<int>& nums, int k) { vector<int> result; stack< ......
随想录 最大值 训练营 随想 算法