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
算法基础·基础算法·并查集
搜索中常见数据结构与算法探究(一)
1前言ES现在已经被广泛的使用在日常的搜索中,Lucene作为它的内核值得我们深入研究,比如FST,下面就用两篇分享来介绍一些本文的主题:第一篇主要介绍数据结构和
算法基础
和分析方法,以及一些常用的典型的数据结构
京东云开发者
·
2023-10-03 18:18
技术分享
算法
数据结构
时间复杂度
红黑树
查找算法
【
算法基础
】2.Trie树、Trie字符串统计、最大异或对(内含模板)
1.Trie树用于高效地存储和查找"字符串集合"的结构。字符的类型是相同的,同为小写或大写或数字1.Trie树的构建2.Trie树的查找按照分支走,这里不多赘述。3.例题1:Trie字符串统计维护一个字符串集合,支持两种操作:1.“Ix”向集合中插入一个字符串x;2.“Qx”询问一个字符串在集合中出现了多少次。共有N个操作,输入的字符串总长度不超过105,字符串仅包含小写英文字母。题解:#incl
l1o99
·
2023-10-03 17:32
算法
算法
c++
acwing
算法基础
之
基础算法
--归并排序
目录1知识点2代码模板1知识点归并排序算法步骤:step1:确定分界点,比如mid=(left+right)/2。step2:递归排序分界点左边部分、分界点右边部分。step3:归并。将有序的左边序列和有序的右边序列,合并成一个有序序列。可以通过双指针算法实现。2代码模板//输入向量类容器,对[l.r]进行排序voidmerge_sort(vector&nums,intl,intr){if(l>=
YMWM_
·
2023-10-03 14:28
Acwing
算法
acwing
算法基础
之
基础算法
--整数二分算法
目录1知识点2代码模板1知识点有单调性一定可以二分,但在某些情况下,不具有单调性也可以二分。单调性也可以抽象成某类性质,分界点左边不满足此性质,而右边满足此性质。当然也可以分界点左边满足此性质,而右边不满足此性质。注意存在边界情况,容易进入死循环,此时需要考虑[0,1]的case去设置mid。2代码模板//有序向量nums//请找到第一个大于等于x的下标,相当于lower_bound()intl=
YMWM_
·
2023-10-03 14:57
Acwing
算法
数据结构
算法基础
(II)-递归(回文、斐波那契、欧几里得算法、汉诺塔)
什么是递归?递归(Recursion),又译为递回,在数学与计算机科学中,是指在函数的定义中使用函数自身的方法。递归一词还较常用于描述以自相似方法重复事物的过程。例如,当两面镜子相互之间近似平行时,镜中嵌套的图像是以无限递归的形式出现的。也可以理解为自我复制的过程。递归是将一个大问题分解成小问题,任何递归函数都可以用迭代函数实现。递归一般比迭代开销更大,但是递归函数非常好理解它的意思。用递归解决问
wopen
·
2023-10-03 12:06
【
算法基础
】
基础算法
(一)--(快速排序、归并排序、二分)
一、快速排序详情可参考:【数据结构】排序(插入、选择、交换、归并)--详解_炫酷的伊莉娜的博客-CSDN博客下面只作模板介绍和注意事项。1、快速排序算法模板记忆!voidquick_sort(intq[],intl,intr){//递归的终止情况if(l>=r)return;//选取分界线。这里选数组中间那个数inti=l-1,j=r+1,x=q[l+r>>1];//划分成左右两个部分while(
炫酷的伊莉娜
·
2023-10-03 10:12
C++
学习
算法
算法
学习
c++
Kiner算法刷题记(六):
并查集
与连通性问题(手撕算法篇)
系列文章导引Kiner算法刷题记(一):链表和链表思想kiner算法刷题记(二):递归与栈(解决表达式求值问题)kiner算法刷题记(三):线程池与任务队列kiner算法刷题记(四):你真的了解二叉树吗(树形结构基础篇)kiner算法刷题记(四):你真的了解二叉树吗(手撕算法篇)kiner算法刷题记(五):堆(Heap)与优先队列(数据结构基础篇)kiner算法刷题记(五):堆(Heap)与优先队
星河阅卷
·
2023-10-03 09:00
数据结构
知识梳理
前端基础
算法
数据结构
「图论」判环、求环、最小环
判断是否存在环无向图
并查集
(不仅能判环,还能判奇环,即利用带权
并查集
)dfs标记法SPFA(给边加权值的方法来通过判正负环进行判环)Tarjan锁点,如果存在双联通分量则存在环有向图dfs标记法,用fa
Suryxin.
·
2023-10-03 01:53
图论
图论
算法
环
【图论】判环
在有向图中判断是否有环可以采用以下算法1.tarjan求强联通分量2.
并查集
判环3.spfa判断负环4.dfs暴力判环下面给出
并查集
判环的代码可以判最小环,也可以判断最大环usingnamespacestd
crosaa
·
2023-10-03 01:52
图论
c++
并查集
判环
关于
并查集
判环我们可以使用
并查集
来判断一个图中是否存在环:对于无向图来说,在遍历边(u−>v)(u->v)(u−>v)时,如果结点uuu和结点vvv的“父亲”相同,那么结点uuu和结点vvv在同一个环中
__Rain
·
2023-10-03 01:51
查并集
图论
算法
c++
c++实现哈希表算法(
算法基础
)
目录1.模拟散列表1.1拉链法1.2开放寻址发2.字符串哈希学完本章,你会对一般的哈希算法有一定的了解1.模拟散列表什么是模拟散列表?模拟散列表又和哈希算法有什么关系呢?模拟散列表就是一个很大范围的数以某种方式映射到较小范围上.比如数的范围是-~,我们只需要从里面取出来左右个数字,那我们在取的时候就需要从-~这个范围上遍历,这样效率比较低,所以我们采用哈希的方式储存,这样查找起来就比较方便且省时了
小魏苦练算法
·
2023-10-03 01:42
c++
散列表
算法
【
基础算法
】哈希表(开放寻址法)
作者:云小逸个人主页:云小逸的主页Github:云小逸的Githubmotto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在!学会自己和解,与过去和解,努力爱自己。==希望春天来之前,我们一起面朝大海,春暖花开!==专栏:C++专栏:Java语言专栏:Linux学习专栏:C语言初阶专栏:数据结构专栏:备战蓝桥杯文章目
云小逸
·
2023-10-03 01:42
备战蓝桥杯
算法
散列表
数据结构
【
基础算法
】哈希表(拉链法)
作者:云小逸个人主页:云小逸的主页Github:云小逸的Githubmotto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在!学会自己和解,与过去和解,努力爱自己。==希望春天来之前,我们一起面朝大海,春暖花开!==专栏:C++专栏:Java语言专栏:Linux学习专栏:C语言初阶专栏:数据结构专栏:备战蓝桥杯文章目
云小逸
·
2023-10-03 01:41
备战蓝桥杯
算法
散列表
数据结构
数据结构与
算法基础
(青岛大学-王卓)(7)
差点就脱更了啊,微臣嘴干玩死,忙碌的暑假,还有头痛的newhouse,我这junkfood也是吃一大堆,please不要长胖啊。图的应用这一章内容也是很多啊,概念真是比牛毛还多。。。看了两遍才缓过来啊fighting文章目录@[toc]图图的定义和基本术语图的抽象数据类型定义图的存储结构邻接矩阵邻接表链式表示法无向图:有向图邻接表链式的存储表示**算法思想:**邻接表特点邻接矩阵和邻接表的关系十字
peanutfish
·
2023-10-03 00:42
数据结构与算法
数据结构
图论
数据结构与
算法基础
(青岛大学-王卓)(8)
哎呀呀,sorry艾瑞波地,这次真的断更一个月了,又发生了很多很多事情,秋风开始瑟瑟了,老父亲身体查出肿瘤了,有病请及时就医,愿每一个人都有一个健康的身体,GodblessUandFAMILY.直接上货了文章目录查找概念线性表的查找顺序查找(线性)应用范围:表示方法:算法:算法7.2时间效率分析:讨论优缺点:折半查找(对半/二分)算法思路二分查找效率分析-判定树平均查找长度ASL(成功时)优缺点分
peanutfish
·
2023-10-03 00:10
数据结构与算法
数据结构
算法
Rumor(
并查集
&贪心)
解析:
并查集
,求每个集合的最小费用。每次合并集合的时候,根节点保存当前集合最小的费用。
陈进士学习
·
2023-10-02 19:20
codeforces
c语言
图论
开发语言
数据结构
算法
c++
机器学习
算法基础
--聚类问题的评价指标
1.聚类问题指标评价的意义聚类算法是非监督学习最常用的一种方法,性能度量是衡量学习模型优劣的指标,也可作为优化学习模型的目标函数。聚类性能度量根据训练数据是否包含标记数据分为两类,一类是将聚类结果与标记数据进行比较,称为“外部指标”;另一类是直接分析聚类结果,称为内部指标。本文对这两类的性能度量以及相似度方法作一个详细总结。本文将总结的指标如下所示:外部指标:1.兰德系数(RI)2.调整兰德系数(
温柔济沧海
·
2023-10-02 19:40
机器学习算法基础
机器学习
算法
聚类
算法基础
-深度优先搜索
深度优先搜索(DFS)和广度优先搜BFS)是图论相关算法的基础,先学习这两个思想(工具)为后续学习更多算法做准备。迷宫式搜索学习深搜通常用走迷宫这一问题来入门。一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?image.png例如,上图是一个7x3
C调路过
·
2023-10-02 14:52
Acwing 240. 食物链
Acwing240.食物链题目描述思路讲解代码展示题目描述思路讲解代码展示#includeusingnamespacestd;constintN=50010;intn,m;intp[N],d[N];//p[]是
并查集
的
BH04250909
·
2023-10-02 11:58
C++刷题
acwing
算法
C++
数据结构
P1525 [NOIP2010 提高组] 关押罪犯(
并查集
)
[NOIP2010提高组]关押罪犯题目描述S城现有两座监狱,一共关押着NNN名罪犯,编号分别为1−N1-N1−N。他们之间的关系自然也极不和谐。很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“怨气值”(一个正整数值)来表示某两名罪犯之间的仇恨程度,怨气值越大,则这两名罪犯之间的积怨越多。如果两名怨气值为ccc的罪犯被关押在同一监狱,他们俩之间会发生摩擦,并造成影响力为ccc的
CH_canghan
·
2023-10-02 10:55
算法
图论
力扣-
并查集
力扣-
并查集
解决问题:具有传递性的问题,判断两个点是否是联通的、以及路径压缩、按秩合并,不关心中间过程TIPS:通过使用不同的按秩合并,可以知道节点的个数,和树的高度,增加一个变量n则可以知道进行了多少次连接操作
Beauty of code
·
2023-10-02 08:07
leetcode
算法
java
并查集
&LRUCache
文章目录
并查集
1.概念2.实现LRUCache1.概念2.实现使用标准库实现自主实现
并查集
1.概念
并查集
是一个类似于森林的数据结构,并、查、集指的是多个不相干的集合直接的合并和查找,
并查集
使用于N个集合
爱敲代码的三毛
·
2023-10-02 07:50
数据结构
java
算法
数据结构
数据结构与
算法基础
-(5)---栈的应用-(1)括号匹配
writeinfront大家好,我是Aileen.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流.本文由Aileen_0v0原创CSDN首发如需转载还请通知⚠️个人主页:Aileen_0v0—CSDN博客欢迎各位→点赞+收藏⭐️+留言系列专栏:Aileen_0v0的数据结构与算法学习系列专栏——CSDN博客我的格言:"没有罗马,那就自己创造罗马~"目录括号与算法的关系如何构造括号匹配识别
Aileen_0v0
·
2023-10-02 06:41
python学习
数据结构与算法
python
开发语言
学习
算法
服务器
数据结构
线性回归
【算法】
算法基础
课模板大全
一、
基础算法
快速排序算法模板voidquick_sort(intq[],intl,intr){//递归的终止情况if(l>=r)return;//选取分界线。
Zh0uKal1
·
2023-10-02 05:00
算法
数据结构
算法
数据结构
知识储备--
基础算法
篇-回溯法
1.回溯法介绍1.1递归和回溯每一个递归都包含回溯,回溯是一种纯暴力搜索方法。每个回溯法都可以抽象为一种N叉树。树的宽度为子集的个数,深度为递归返回的条件。二叉树中的递归都会有回溯算法,只不过有些题目用到了,有些没有用到。1.2回溯能解决的问题回溯能解决包括组合、排列、切割、子集、棋盘等等问题。1.3回溯算法的模板回溯算法就是把栈弹出,恢复到父节点的状态。例如[1,2,3,4]求组合,我们通过递归
Orange_sparkle
·
2023-10-02 04:41
算法
算法竞赛备赛之贪心算法训练提升,贪心
算法基础
掌握
1.区间问题905.区间选点给定N个闭区间[ai,bi],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。输出选择的点的最小数量,位于区间端点上的点也算作是区间内。将每个按区间的右端点从小到大排序从前往后依次枚举每个区间如果当前区间中已经包含点,则直接pass否则,选择当前区间的右端点#include#includeusingnamespacestd;constintN=100
Williamtym
·
2023-10-01 23:04
2023暑期算法集训
算法
c++
贪心算法
算法竞赛
huffman
tree
绝对值不等式
排序不等式
同向双指针 滑动窗口【
基础算法
精讲 03】
长度最小的子数组:链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台思路:滑动窗口的思想,取i=j=0,向后遍历j,记录前缀和[l,r]为s,如果s>=target,那么左端点向右移动,直到sint:n=len(nums)ans=n+1l=0s=0forr,xinenumerate(nums):s+=xwhiles>=target:ans=min(ans,r-l+1)s-=nums[l
ros275229
·
2023-10-01 22:19
灵神算法精讲
leetcode刷题
算法学习
算法
leetcode
盛最多水的容器 接雨水【
基础算法
精讲 02】
盛雨水最多的容器链接:11盛最多水的容器思路:双指针:1.对于两条确定的边界,l和r,取中间的线m与r组成容器,如果m的高度>l的高度,那么整个容器的长度会减小,如果低于l的高度,那么不仅高度可能会减小,长度也一定会减小;2.取l=0,r=n-1,循环遍历答案即可;代码(c++):classSolution{public:intmaxArea(vector&height){intn=height.
ros275229
·
2023-10-01 22:48
灵神算法精讲
leetcode刷题
算法学习
算法
leetcode
Acwing 836. 合并集合
Acwing836.合并集合题目描述思路讲解代码展示题目描述思路讲解
并查集
:代码短,思路精巧,面试常见。近乎O(1)的时间复杂度。
BH04250909
·
2023-10-01 18:57
C++刷题
acwing
算法
C++
数据结构
数据结构——
并查集
并查集
是一种数据结构,是树的一种应用,用于处理一些不交集(一系列没有重复元素的集合)的合并以及查询问题。
并查集
支持如下操作:查询:查询某个元素属于哪个集合,通常是返回集合内的一个“代表元素”。
七个披萨
·
2023-10-01 17:59
数据结构和算法
数据结构
java
数据结构之
并查集
在此之前我们需要思考:
并查集
是解决什么问题的,如何应用?
并查集
解决的是连通性(无向图联通分量)和传递性(家谱关系)问题,并且可以动态的维护。
litian355
·
2023-10-01 17:59
数据结构
数据结构
图论
散列表
数据结构(八):
并查集
详解 (多图+动图)
目录一、什么是
并查集
二、
并查集
的存储结构三、
并查集
的基本操作(一)初始化(二)Find操作(三)Union操作四、
并查集
的优化(一)Union操作优化(小树并入大树)(二)Find操作优化(压缩路径)一
ReadyGo!!!
·
2023-10-01 17:29
数据结构
数据结构
c++
ACM-数据结构-
并查集
ACM竞赛中,
并查集
(DisjointSets)这个数据结构经常使用。顾名思义,
并查集
即表示集合,并且支持快速查找、合并操作。
并查集
如何表示一个集合?它借助树的思想,将一个集合看成一棵有根树。
潜水的疯
·
2023-10-01 17:29
ACM-专题-数据结构
acm
算法提高--数据结构--
并查集
例题(1)
算法提高–数据结构–
并查集
例题–格子游戏题目描述:Bob和Alice玩游戏,两人分别在一个方格纸上延边画线,当画出封闭矩形时结束游戏。问什么时候结束游戏。
炎心
·
2023-10-01 17:58
数据结构
数据结构
数据结构——图解
并查集
(合并树)
什么是
并查集
并查集
,在一些有N个元素的集合应用问题中,我们通常是在开始时让每个元素构成一个单元素的集合,然后按一定顺序将属于同一组的元素所在的集合合并,其间要反复查找一个元素在哪个集合中。
馒头老爸
·
2023-10-01 17:26
数据结构
数据结构
并查集
合并树
数据结构--
并查集
一、
并查集
的概念
并查集
是一种树型的数据结构,用于处理一些不相交集合(disjointsets)的合并及查询问题。常常在使用中以森林来表示。最裸
并查集
:合并元素a和元素b所在的集合。
小凡学编程
·
2023-10-01 17:55
【信奥赛之路
2】--
算法基础
数据结构
c++
算法
青少年编程
一种特别的树形结构 |
并查集
并查集
主要解决连接问题
并查集
操作:find(i)查找父亲结点isConnected(p,q)查询是否相连,返回boolunionElements(p,q)合并两个结点普通版本:无路径压缩,无优化classUnionFind
青春猪头少年_
·
2023-10-01 16:37
扩散c++(floyd和Kruskal+
并查集
)
扩散题目描述一个点每过一个单位时间就会向四个方向扩散一个距离,如图。两个点a、b连通,记作e(a,b),当且仅当a、b的扩散区域有公共部分。连通块的定义是块内的任意两个点u、v都必定存在路径e(u,a0),e(a0,a1),…,e(ak,v)。给定平面上的n给点,问最早什么时刻它们形成一个连通块。输入格式第一行一个数n,以下n行,每行一个点坐标。【数据规模】对于20%的数据,满足1≤N≤5;1≤X
renxvqing0522
·
2023-10-01 15:15
c++
算法
开发语言
C语言
基础算法
篇-交换排序
C语言
基础算法
篇-交换排序前言冒泡排序前言在这里为C语言经常使用到的排序算法进行归类整理,让初学者和自己更好的理解排序算法。在这里我主要描述排序算法中的交换排序:冒泡排序、快速排序。
weixin_45782854
·
2023-10-01 12:32
C/C++算法
算法
排序算法
快速排序
一文解决CSP-J考纲所有排序算法
关于排序知识点,在算法-
基础算法
中提到了CSP-J中所考察的排序知识点,有选择排序、冒泡排序、插入排序及计数排序。
大大大大李
·
2023-10-01 12:30
排序算法
算法
c++
并查集
---- 扩展域
并查集
判二分图 + 循环模拟字典树 The 2020 ICPC Asia Macau Regional Contest C. Club Assignment (详解)
题目链接题目大意:有n个数,现在要把他们拆分成两个集合,假设S为集合,有如下定义:f(S)={min(x⊕y)∣x,y∈S,and x!=y}f(S)=\{min(x\oplusy)|x,y\inS,and\;x!=y\}f(S)={min(x⊕y)∣x,y∈S,andx!=y}将n个数拆分为两个集合A,B,要求最大化min(f(A),f(B))min(f(A),f(B))min(f(A),f(
黑夜和白天
·
2023-10-01 09:14
#
并查集
#
trie树
c语言
图论
算法
算法基础
课第二部分
算法基础
课第四讲数学知识AcWing1381.阶乘(同余,因式分解)质数AcWing866.质数的判定---试除法AcWing868.质数的判定---埃氏筛AcWing867.分解质因数---试除法AcWing197
943802606
·
2023-10-01 08:33
算法
数据结构 图
并查集
遍历方法 最短路径算法 最小生成树算法 简易代码实现
文章目录前言
并查集
图遍历方法广度优先遍历深度优先遍历最小生成树算法Kruskal算法Prim算法最短路径算法Dijkstra算法BellmanFord算法FloydWarshall算法全部代码链接前言图是真的难
梦 梦见木
·
2023-10-01 07:42
算法
数据结构
图
并查集
LeetCode -721 账户合并
MapunionMap=newHashMap();Map>muMap=newHashMap>();//每个邮箱地址对应的用户publicList>accountsMerge(List>accounts){//初始化
并查集
三岁就很萌@D
·
2023-10-01 06:05
leetcode
leetcode
算法
图论
并查集
算法(图论)
代码:classUnionFind{intparent[];publicUnionFind(intn){parent=newint[n];for(inti=0;i
从月亮走向月亮7
·
2023-10-01 06:05
算法
图论
java
图论27(Leetcode721账户合并)
代码:写了一个超时版本又学了
并查集
超时版本:classSolution{publicList>accountsMerge(List>accounts){List>newAcc=newArrayListisArrive
从月亮走向月亮7
·
2023-10-01 06:03
图论
程序员必须掌握的算法系列之编程
基础算法
程序员编程
基础算法
一:引言算法是计算机科学的核心,是程序员必须掌握的基本技能之一。无论是解决实际问题,还是在面试中展现自己的编程能力,算法都起着至关重要的作用。
疯狂小赤兔
·
2023-10-01 04:37
算法
并查集
及其优化
1.
并查集
#defineSIZE100intUFSets[SIZE];voidInitial(intS[]){for(inti=0;i=0)x=S[x];returnx;}voidUnion(intS[
平人的进步日常
·
2023-10-01 00:05
数据结构
数据结构
机器学习
算法基础
--层次聚类法
文章目录1.层次聚类法原理简介2.层次聚类法
基础算法
演示2.1.Single-linkage的计算方法演示2.2.Complete-linkage的计算方法演示2.3.Group-average的计算方法演示
温柔济沧海
·
2023-10-01 00:32
机器学习算法基础
机器学习
算法
聚类
【浮*光】 #noip总复习# hss_2018noip_rp++
线段树复习题https://www.luogu.org/problemnew/show/P4041√最短路+dp复习题https://www.luogu.org/problemnew/show/P1772√
并查集
复习题
flora715_hss
·
2023-10-01 00:25
知识点
C++
noip考前祭
上一页
28
29
30
31
32
33
34
35
下一页
按字母分类:
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
其他