E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
acwing算法学习
AcWing
|【并查集】合并集合
题目内容一共有n个数,编号是1~n,最开始每个数各自在一个集合中。现在要进行m个操作,操作共有两种:“Mab”,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;“Qab”,询问编号为a和b的两个数是否在同一个集合中;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为“Mab”或“Qab”中的一种。输出格式对于每个询问指令”Qab”,都要输出一
Leonadoice
·
2024-01-09 17:15
算法训练营
AcWing
|【并查集】食物链
题目内容动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B,B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这N个动物所构成的食物链关系进行描述:第一种说法是”1XY”,表示X和Y是同类。第二种说法是”2XY”,表示X吃Y。此人对N个动物,用上述两种说法,一句接一句地说出K句话,这K句话有的是真的,
Leonadoice
·
2024-01-09 17:15
算法训练营
acwing
算法基础课:并查集
并查集模板作用:1.将两个集合合并2.询问两个元素是否在同一个集合中近乎O(1)时间复杂度完成上述操作基本原理:每个集合用一棵树表示,树根的编号就是整个集合的编号。每个节点存储它的父节点,p[x]表示x的父节点(1)朴素并查集:intp[N];//存储每个点的祖宗节点//返回x的祖宗节点intfind(intx){if(p[x]!=x)p[x]=find(p[x]);returnp[x];}//初
墨染&殇泪
·
2024-01-09 17:14
acwing
#
数据结构
算法
AcWing
836. 合并集合(并查集)
作用:高效的合并两个集合和查询两个元素是否在同一个集合,时间复杂度近O(1);原理:每个集合用一颗树来表示,树根的编号就是整个集合的编号,每个节点存储他的父节点。#includeusingnamespacestd;constintN=100010;intp[N];intfindd(intx){while(p[x]!=x){x=p[x];}returnx;}intmain(){ios::sync_w
秘制函数
·
2024-01-09 17:44
数据结构
算法
c++
数据结构
银河英雄传说
acwing
-238 并查集
题面链接:238.银河英雄传说-
AcWing
题库题面:思路:并查集,如果没有求两艘战舰之间的战舰数量,这就是一题很简单的并查集但是这题需要计算两艘战舰之间的数量,我们就需要维护一个d数组,保存的是当前战舰到战舰头的距离
Evil_boy__
·
2024-01-09 17:14
c++
数据结构
并查集
Acwing
并查集学习记录
Acwing
1250.格子游戏题意:输入:矩阵长宽为n,m次操作输出:输出一行:在第几步的时候结束。假如m步之后也没有结束,则输出一行“draw”。
haniwn
·
2024-01-09 17:13
笔记
算法
AcWing
-并查集-合并路径
文章目录并查集
acwing
-836合并路径并查集将两个集合合并询问两个元素是否在一个集合当中O(1)近乎O(1)基本原理:每个集合用一棵树来表示,树根的编号就是整个集合的编号。
superkcl2022
·
2024-01-09 17:13
#
AcWing
算法
数据结构
acwing
字典树/前缀树(Trie)
目录
AcWing
835.Trie字符串统计
AcWing
143.最大异或对lc上前缀树实现(节点型)树中为每个节点编号,每条路径表示一个原始元素,如:节点为字符,原始元素为字符串,或:节点为比特位,原始元素为一个数因为会使用节点编号查询存储矩阵的行位置所以存储矩阵的行数开可能的最多的节点个数
honortech
·
2024-01-09 17:43
算法
acwing
KMP算法
【数据结构】KMP算法(详解)#include#include#includeusingnamespacestd;constintN=1e6+10;intn1,n2;chars1[N],s2[N];vectornext_val(N);voidget_next(){//next数组中的元素为最长比配前缀的下标//这里下标从一开始,无匹配前缀的元素为0//这里的前缀匹配字符为j的下一个字符,j从0开始
honortech
·
2024-01-09 17:12
算法
AcWing
算法基础 并查集
并查集并查集解决的问题将两个集合合并询问两个元素是否在一个集合中基本原理用树的形式来维护每个集合,树根的编号就是整个集合的编号,每个节点存储他的父节点,p[x]表示x的父节点问题1,如何判断树根:if(p[x]==x);问题2,如何求x集合的编号:while(p[x]!=x)x=p[x];问题3,如何合并两个集合,px是x集合的编号,py是y的集合编号,令p[x]=y。问题2优化:某个节点找到根节
mu6y
·
2024-01-09 17:40
算法
算法
数据结构
算法学习
周记4(
acwing
并查集、二分)
acwing
——836合并并查一共有nn个数,编号是1∼n1∼n,最开始每个数各自在一个集合中。
whisper_cxl
·
2024-01-09 17:10
算法
学习
acwing
并查集
目录并查集的路径压缩两种方法法一法二
AcWing
240.食物链
AcWing
837.连通块中点的数量示例并查集自写并查集并查集的路径压缩两种方法法一沿着路径查询过程中,将非根节点的值都更新为最后查到的根节点
honortech
·
2024-01-09 17:08
数据结构
c++
算法
[
算法学习
] 排序算法(二)——快速排序与优化
这里继续整理常见的排序算法.本文介绍快速排序以及对快速排序的优化typerightbyThomasAlan光风霁月023.XDU1.常规//1.对arr[l...r]部分进行partition操作//rtnp,arr[l,p-1]arr[p]templateTINT32__partition(Tarr[],TINT32l,TINT32r){swap(arr[l],arr[rand()%(r-l+1
光风霁月023
·
2024-01-09 09:44
offer拿到手软了,全靠这份2022年大厂高频Java面试真题集锦(含答案)
与此同时,今年算法面试一定是会被问的,而算法不是光靠背面试题就有用的,它是需要数学逻辑思维的,因此,小编会在文末为大家准备一份非常优质的
算法学习
手册,重点在于学习思维方法,话不多说,直
分布式与微服务
·
2024-01-09 07:12
日历
算法学习
总结——公历
日历
算法学习
总结——公历学习了日历算法,做些记录,方便以后复习。1历法:公元1582年10月15日起使用格里历。公元1582年10月4日之前到公元前45年1月1日使用儒略历。
adoreboy
·
2024-01-09 05:38
算法
算法
日历
公历
万年历
2172. Dinic/ISAP求最大流 (Dinic算法)
2172.Dinic/ISAP求最大流-
AcWing
题库给定一个包含n个点m条边的有向图,并给定每条边的容量,边的容量非负。图中可能存在重边和自环。求从点S到点T的最大流。
Landing_on_Mars
·
2024-01-08 21:13
#
网络流问题
算法
网络流
【动态规划】数位统计DP
(2)将t每一位数据抠出来,然后一位一位数字进行考虑,按照树的结构进行考虑,如下图(图片来源:网址):2.
AcWing
上的数位统计
你好世界wxx
·
2024-01-08 21:30
算法
动态规划
第五章 动态规划(8):数位DP模型
1、计数问题
ACWing
338算法思路:一定要分情况讨论首先,题目要求在[a,b]中0~9这10个数中分别出现的次数,那么我们先实现一个函数count(n,x)
路哞哞
·
2024-01-08 21:28
算法笔记
动态规划
算法
c++
非科班菜鸡
算法学习
记录 | 代码随想录算法训练营第56天|| 583. 两个字符串的删除操作 72. 编辑距离 编辑距离总结篇
583.两个字符串的删除操作583.DeleteOperationforTwoStrings知识点:动规状态:看思路自己写思路:dpij为到i-1和j-1为止的最小操作次数,需要初始化;dp[i][0]表示i-1要想变成和-1一样的删除次数,删除次数=i;递推公式:当i-1=j-1时,不需要删,所以dp[i][j]=dp[i-1][j-1];不等时三种情况:dp[i][j]=min(dp[i][j
Serein980610
·
2024-01-08 09:58
学习
欧拉函数算法总结
例题展示欧拉函数题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。https://www.
acwing
.com/problem
ykycode
·
2024-01-08 08:06
经典算法总结
数论
算法
欧拉函数
数学
数论
线性筛法
欧拉定理
费马小定理
AcWing
998. 起床困难综合症
原题链接其实上面这一堆就是想说,输入n,m以及n个数和该数所对应的运算,其中运算包括有与、或、异或三种,真正的问题就是在所有不大于m的数(非负数)中,对给定的n个数都按该数所对应的运算运算一遍后,能得到得最大的值是多少。AND表示按位与,OR表示按位或,XOR表示按位异或AcceptedCode:#include#include#includeusingnamespacestd;constintN
青春pig头少年
·
2024-01-08 08:25
AADS
算法
c++
数据结构
LeetCode刷题-矩阵中战斗力最弱的K行
前言说明
算法学习
,日常刷题记录。题目连接矩阵中战斗力最弱的K行题目内容给你一个大小为m*n的矩阵mat,矩阵由若干军人和平民组成,分别用1和0表示。
小鲨鱼FF
·
2024-01-08 04:38
算法学习
总结
算法总结文章目录算法总结搜索遍历dfs树的深度树的重心图的连通块划分bfs双端队列bfsbfs图问题迭代加深双向搜索A*IDA*Morris遍历Manacher数论质数判断质数分解质因数埃氏筛法线性筛法约数求N的正约数集合——试除法求1~N每个数的正约数集合——倍除法欧拉函数快速幂快速幂求逆元扩展欧几里得算法斐蜀定理扩展欧几里得算法线性同余方程中国剩余定理卡特兰数低阶数据结构链表邻接表AVL树单调
joker D888
·
2024-01-07 20:26
算法与数据结构
算法
c++
ACM
数据结构
KMP
算法学习
代码随想录-B站视频KMP:三位学者首字母,用于匹配字符串。时间消耗:O(m+n)。文本串:需要在其中查找模式串。模式串:不匹配时,不会直接从文本串的下一个字符,而是直接跳到当前已经匹配好的串后继续匹配。前缀表:一个字符串中每个字符的最长相等前后缀。前缀:包含首字母,不包含尾字母的所有字串。后缀:包含尾字母,不包含首字母的所有字串。最长相等前后缀:例子:aabaafa:是前缀没有后缀,0;a:aa
一天的大太阳
·
2024-01-07 18:12
算法
学习
试除法求约数算法总结
例题展示题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。
ykycode
·
2024-01-07 15:47
经典算法总结
数论
算法
试除法
数学
数论
约数
试除法求约数
约数个数和约数之和算法总结
例题展示约数个数题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。https://www.
acwing
.com/prob
ykycode
·
2024-01-07 15:47
经典算法总结
数论
算法
数学
试除法
约数个数
约数之和
数论
约数
筛质数算法总结
题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。
ykycode
·
2024-01-07 15:46
经典算法总结
数论
算法
筛质数
数论
质数
数学
埃氏筛法
线性筛法
类欧几里得
算法学习
笔记
类欧几里得算法是欧几里得算法的拓展.这里介绍万能欧几里得算法,他适用性广泛,实现简单,相信你一下就能学会.模型万能欧几里得算法的使用场景为:在一个平面直角坐标系中,有一条直线y=px+rqy=\dfrac{px+r}qy=qpx+r,当其碰到一条横线时执行UUU操作,碰到一条竖线时执行RRR操作.(特别的,当同时碰到定义为先执行UUU).操作必须满足结合律,交换律不需要有.我们定义两个操作s,ts
Infinite_Jerry
·
2024-01-07 15:45
数论
算法
学习
扩展欧几里得
算法学习
笔记
扩展欧几里得算法:前言:学了两周数据结构发现数论图论忘光了,所以回来补一下,顺便写下笔记。前置需要:欧几里得算法,裴蜀定理,脑子欧几里得算法:即辗转相除法,gcd(a,b)=gcd(b,a mod b)\gcd(a,b)=\gcd(b,a\bmodb)gcd(a,b)=gcd(b,amodb)裴蜀定理:若a,ba,ba,b是整数,且gcd(a,b)=d\gcd(a,b)=dgcd(a,b)=
IImmkk
·
2024-01-07 15:15
学习笔记
欧几里得算法总结
例题展示题目链接活动-
AcWing
系统讲解常用算法与数据结构,给出相应代码模板,并会布置、讲解相应的基础算法题目。
ykycode
·
2024-01-07 15:40
经典算法总结
数论
算法
欧几里得算法
辗转相除法
数论
数学
AcWing
1725 组队井字游戏 题解(春季每日一题)
AcWing
1725组队井字游戏思路很简单,我的实现代码太过复杂,下面放的有y总的简洁版代码#includeusingnamespacestd;typedefpairPCC;intans,res;charg
QingQingDE23
·
2024-01-07 15:41
每日一题
算法
AcWing
1082 数字游戏 题解(动态规划—DP—数位DP)
原题传送门#includeusingnamespacestd;constintN=15;inta,b,n;intf[N][N];//表示一共有i位,最高位为j的数的个数voidinit(){for(inti=0;inum;while(n){//把n逆序存储,这样从最高位开始遍历num时,后一位就是他的低位,符合题意num.push_back(n%10);n/=10;}intres=0;//记录方案
QingQingDE23
·
2024-01-07 15:11
动态规划-DP
动态规划
算法
AcWing
1084 数字游戏 II 题解(实体规划—DP—数位DP)
原题传送门#includeusingnamespacestd;constintN=11,M=110;intP;intf[N][10][M];//f[i][j][k]表示i位数字,最高位为j,modN为k的数字的个数intmod(intx,inty){return(x%y+y)%y;}voidinit(){memset(f,0,sizeof(f));//因为有多组测试样例,所以每次调用f需要初始化为
QingQingDE23
·
2024-01-07 15:11
动态规划-DP
游戏
动态规划
算法
AcWing
1695 果壳游戏 题解(春季每日一题)
有一些思维的简单模拟原题#includeusingnamespacestd;constintN=110;intn;intans;//记录最大分数inta[N],b[N],c[N];boolit[N];//记录石子在哪intmain(){cin>>n;for(inti=1;i>a[i]>>b[i]>>c[i];}for(inti=1;i<=n;i++){//猜石头在哪个盒子下面intcnt=0;//
QingQingDE23
·
2024-01-07 15:11
每日一题
算法
蓝桥杯
AcWing
323 战略游戏 题解(动态规划—DP—树形DP)
原题传送门#includeusingnamespacestd;constintN=1510;intn;inte[N],h[N],ne[N],idx;intf[N][2];/*f[i][0]表示第i个节点没有放士兵时,以i为根节点的子树所含的最小士兵数f[i][1]表示第i个节点放士兵时,以i为根节点的子树所含的最小士兵数*/boolst[N];voidadd(inta,intb){e[idx]=b
QingQingDE23
·
2024-01-07 15:40
动态规划-DP
动态规划
游戏
算法
蓝桥杯备赛系列 高精度
acwing
版
前言hello,好久不见。元旦玩过后该收心了,我也倒计时一下蓝桥杯考试时间,大家一起复习,一起登顶。今天讲解高精度算法。这个算法其实是给学c++同学讲的,因为python自带高精度所以不需要,且我讲到所有内容都是c++版本,今年就要报考c++,今年学好了Java可以上Java内容。不多bb了上正文正文先介绍一下为什么要用高精度。int:通常,int类型的大小是依赖于特定平台的,常见的有16位(2字
Beatmyselfonce
·
2024-01-07 14:55
蓝桥杯
职场和发展
机器学习
算法学习
-梯度提升树(GBDT)
1.算法GBDT(GradientBoostingDecisionTree),梯度提升树,是属于集成算法中boosting类的一种算法。这个算法是现有机器学习算法中相对较实用的算法。由其衍生的lightGBR以及Xgboost都是非常实用的数据分析工具。1.1与Adboost比较回顾下Adaboost,我们是利用前一轮迭代弱学习器的误差率来更新训练集的权重,这样一轮轮的迭代下去,Adboost实际
Kiroro
·
2024-01-07 13:50
Megahit, metaSPAdes, metabat2, GTDB-tk, checkM
参考https://zhuanlan.zhihu.com/p/470457258、德布鲁因图和OLC组装基因组-简书(jianshu.com)、[
算法学习
1]基因组组装算法DeBruijnGraph-知乎
苦中作乐613
·
2024-01-07 12:48
其他
【基础算法笔记】Prim,Kruskal,匈牙利算法
在
acwing
上学习算法的一点思考与总结匈牙利算法这个算法是个很有趣的算法,也很好用。引用
acwing
一句高赞评论:匈牙利算法准则:待字闺中,据为己有;名花有主,求他放手。
Radein
·
2024-01-07 08:48
算法
图论
笔记
c++
【基础算法笔记】贪心算法中的区间问题
在
acwing
上学习算法的一点思考和总结感受:贪心算法难在他的证明,很多时候我们都是有一个感觉,然后去猜是否能用贪心做,借助几个实例去证明贪心算法的正确性。
Radein
·
2024-01-07 08:48
算法
贪心算法
学习
c++
笔记
【基础算法笔记】dp(背包问题)
在
acwing
上学习算法时的一点思考与总结。如何理解dp思路:动态规划解决问题的方式就是将一个大问题分解成多个子问题。每个子问题的决策都会影响下一个子问题的决策,也就是i状态会受到i-1状态的影响。
Radein
·
2024-01-07 08:18
笔记
算法
c++
【算法笔记】BFS(走迷宫,八数码)
Acwing
yydsBFS(宽度优先遍历)与深度优先搜索一条路走的死的方式不同,宽度优先遍历是一层一层来搜,当一层的节点被搜索完成后,才会进入下一层。
Radein
·
2024-01-07 08:18
算法
笔记
宽度优先
洛谷 P1086:花生采摘 ← 结构体
【题目来源】https://www.luogu.com.cn/problem/P1086https://www.
acwing
.com/problem/content/description/420/【题目描述
hnjzsyjyj
·
2024-01-07 05:43
信息学竞赛
#
基础语法
结构体
通过大量生物、地球、农业、气象、生态、环境科学领域中案例,一起探索如何优雅地使用大模型吧!
·E、Midjourney、StableDiffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮,可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、
算法学习
思考的小猴子
·
2024-01-06 17:13
农业
土壤
生态
人工智能
农业
环境
数据结构与
算法学习
笔记(训练营三)-经典面试二
给定一个正整数M,请构造出一个长度为M的数组arr,要求对任意的i、j、k三个位置,如果i[1,3,9]。同事变换为偶数也是达标的。[1,2,5]->[2,4,10],所以我们就找到了一个达标种子[1,2,5]得到了两个达标的数组[1,3,9]和[2,4,10],可以证明这两个新数组组成的数组也是达标的[1,3,9,2,4,10],在奇数部分选一个加上偶数部分选一个,一定是奇数,任何一个数的2倍必
剑侠李逍遥
·
2024-01-06 07:51
算法排序篇——选择排序与插入排序
我的
算法学习
笔记:算法基础之——SelectionSort,InsertionSort选择排序原理选择排序代码的实现插入排序原理插入排序的代码实现插入排序的优化选择排序原理选择排序动态演示选择排序示例:
憨憨二师兄
·
2024-01-06 06:37
二叉搜索树(
算法学习
日记)
PS:这是我
算法学习
中的一点总结,有什么地方有错的欢迎大佬在评论区指出也欢迎学算法的朋友友与我一起讨论呀,如有侵权,请评论,我会第一时间联系版权方进行处理。
灰羽小少爷
·
2024-01-06 03:59
C++
算法学习
五.二叉树(1)
1.二叉树理论基础二叉树的种类:满二叉树:一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。深度为k,总共有2的k次幂-1个节点。完全二叉树:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第h层(h从1开始),则该层包含1~2^(h-1)个节点。优先级队列其实是一个堆,
Albert.H.Holmes
·
2024-01-05 21:55
算法
c++
学习
莫比乌斯反演(
acwing
2702)
对于给出的n�个询问,每次求有多少个数对(x,y)(�,�),满足a≤x≤b,c≤y≤d�≤�≤�,�≤�≤�,且gcd(x,y)=kgcd(�,�)=�,gcd(x,y)gcd(�,�)函数为x�和y�的最大公约数。输入格式第一行一个整数n�。接下来n�行每行五个整数,分别表示a、b、c、d、k�、�、�、�、�。输出格式共n�行,每行一个整数表示满足要求的数对(x,y)(�,�)的个数。数据范
yusen_123
·
2024-01-05 11:51
数论
算法
acwing
1358. 约数个数和(莫比乌斯函数)
设d(x)�(�)为x�的约数个数,给定N,M�,�,求∑i=1N∑j=1Md(ij)∑�=1�∑�=1��(��)输入格式输入多组测试数据。第一行,一个整数T�,表示测试数据的组数。接下来的T�行,每行两个整数N、M�、�。输出格式T�行,每行一个整数,表示你所求的答案。数据范围1≤N,M,T≤500001≤�,�,�≤50000输入样例:27456输出样例:110121思路:推导比较麻烦;代码
yusen_123
·
2024-01-05 11:51
数论
算法
上一页
10
11
12
13
14
15
16
17
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他