刷新
P6765 [APIO2020] 交换城市

博主头像 传送 很有意思的一个题! 首先观察无解情况。很显然不连通是无解的,联通块是一条链也是无解的。 剩下的都有解。因为要么有环要么有点度数 \(>3\),有环就随便转一圈,没环就随便找个度数 \(>3\) 的点当中转站,两辆车跑到不同分支上再往回返。 然后考虑一下二分答案的思想,保留对应的边用上面的方法判 ...

算法day12-二叉树(2)

博主头像 目录 二叉树的最大深度 二叉树的最小深度 扩展题 一、二叉树的最大深度 https://leetcode.cn/problems/maximum-depth-of-binary-tree?envType=problem-list-v2&envId=8At1GmaZ 这道题可以用广度优先搜索/深度优先 ...

P1220 关路灯 搜索剪枝

博主头像 题目链接: https://www.luogu.com.cn/problem/P1220 在搜索题单里第一次看到这种题目被吓住了 和之前我刷过的搜索题(全是板子)比,这里需要不断地朝不同方向搜索 并且让人汗流浃背的是1≤n≤50,爆搜肯定是炸了. 考虑这三个点 1.如何去遍历左右节点 2.记录状态的 ...

卡常小寄巧

博主头像 由于主播最近做 Ynoi 做多了,卡常卡的有点魔怔,所以写一下这个。 读入输出 我常用的是 cin/cout,不怎么用 printf/scanf。 关掉同步流(常用手法) 多询问的时候,换行不要用 endl,用 \n,endl 会附加清空缓存区的时间。 数据量大或者时限紧的时候手写快读快写。 正常快 ...

beagle 的使用方法和参数信息

博主头像 一、基本使用场景 1. 单倍型推断(Phasing) 将未分型的基因型数据(如 VCF/BCF 文件)推断为单倍型。 java -jar beagle.jar \ gt=input.vcf.gz \ # 输入基因型数据(需bgzip压缩) out=phased_output # 输出文件前缀(自动生 ...

算法day11-二叉树(1)

博主头像 目录 二叉树理论基础 二叉树递归遍历 二叉树迭代遍历 统一的迭代遍历方法 小结 一、二叉树理论基础 种类:满二叉树(除了叶子节点外,每个节点都有两个子节点)、完全二叉树(每一层都被填满,最后一层从左到右连续排列)、二叉搜索树(左子树所有节点小于根节点,右子树所有节点大于根节点)、平衡二叉搜索树(在 ...

算法day10-栈与队列(2)

博主头像 目录 逆波兰表达式求值 滑动窗口最大值 前K个高频元素 一、逆波兰表达式求值 https://leetcode.cn/problems/evaluate-reverse-polish-notation/description/?envType=problem-list-v2&envId=8At1Gm ...

算法day09-栈与队列(1)

博主头像 目录 力扣232. 用栈实现队列 力扣225. 用队列实现栈 力扣20. 有效的括号 力扣1047. 删除字符串中的所有相邻重复项 一、用栈实现队列 主要思路:我们使用两个栈来实现一个队列的功能:其中一个作为输入栈,用于接收通过 push 操作传入的数据;另一个作为输出栈,专门用于处理 pop 和 ...

算法day08-字符串篇(2)

博主头像 目录 反转字符串中的单词 找出字符串中第一个匹配项的下标 重复的子字符串 一、反转字符串中的单词 主要思路:把整个字符串的头尾的空格先去掉,然后根据” ”来划分字符串数组,将字符串倒着放进结果中。 class Solution { public String reverseWords(String ...

算法day07-字符串篇(1)

博主头像 目录 344 反转字符串 反转字符串II 替换数字 一、反转字符串 344. 反转字符串 - 力扣(LeetCode) 本题要求原地反转字符串,即不使用额外空间修改 char[] s 中的字符顺序。考虑使用双指针法: 定义两个指针 left 和 right,分别指向字符串的两端; 依次交换 s[le ...

矩阵快速幂

算法封装模板 点击查看代码 struct matrix { vector<vector<int>>a,b; int n; matrix (int n1):n(n1),a(n1,vector<int>(n1,0)),b(n1,vector<int>(n1,0)){} matrix operator-( ...

算法day06-哈希表篇(2)

博主头像 目录 四数相加II 赎金信 三数之和 四数之和 一、四数相加II 454. 四数相加 II - 力扣(LeetCode) 主要思路: 分组+哈希表优化: 将四个数组分成两组,nums1 和 nums2 为一组,nums3 和 nums4 为另一组。 首先计算 nums1 和 nums2 中所有可能的 ...

算法day05-哈希表篇 (1)

博主头像 目录 哈希表理论基础 242 有效的字母异位词 349 两个数组的交集 202 快乐数 1 两数之和 一、理论基础 哈希表(hash table),散列表。一般哈希表用来快速判断一个元素是否出现集合里,只需要O(1)复杂度就可以做到,不需要遍历。 三种方法:数组、set、map 哈希碰撞:两个数据哈 ...

算法——链表总结及扩展题

博主头像 目录 扩展题 下图中打勾的题目为前两个专题中已经做过的,接下来我们就来联系一下剩余的题目。 回文链表234. 回文链表 - 力扣(LeetCode) 21. 合并两个有序链表 - 力扣(LeetCode) 2. 两数相加 - 力扣(LeetCode) 25. K 个一组翻转链表 - 力扣(LeetC ...

什么是AC自动机?如何实现?

博主头像 什么是AC自动机? 是基于 Trie树 和 KMP失配指针 的一种高效多模式匹配算法。AC自动机能够一次构建,随后在遍历文本时同时匹配多个敏感词。 AC自动机算法的典型应用是敏感词匹配,在各大社交媒体平台如:微博、知乎、抖音等各用户发表评论时,该算法便派上了用场,最典型的是王者荣耀,玩家在聊天框发表 ...

算法day04-链表篇(2)

博主头像 训练目录 24题两两交换链表中的节点 19题 删除链表的倒数第N个节点 面试题 链表相交 142题 环形链表II 一、两两交换链表中的节点【交换节点】 这道题可以参考k个一组反转链表的操作。也可以就用两个节点交换的做法。 1 /** 2 * Definition for singly-linked ...

刷题笔记Day31贪心算法part05

博主头像 刷题笔记Day30:贪心算法part04 题目:合并区间 56. 合并区间 - 力扣(LeetCode) 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好 ...

每天一个小算法:回文数

博主头像 题目描述 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3: ...

算法day03-链表篇(1)

博主头像 今日任务目录 链表理论基础 203.移除链表元素 707.设计链表 206.反转链表 今天这一节是和链表的基础操作相关的,更加复杂的题目我们放到后面由浅入深来做。 一、链表理论基础 二、移除链表元素 这是力扣203题(),本题最关键是要理解虚拟头节点的使用技巧,这对链表题目很重要。 主要思路:对于A ...

<1···678···11>