当前位置: 首页 > news >正文

制作自助网站怎么免费创建网页

制作自助网站,怎么免费创建网页,网页实时翻译器,做网站除了广告还有什么收入的目录 一#xff0c;什么是并查集 二#xff0c;并查集的结构 三#xff0c;并查集的代码实现 1#xff0c;并查集的大致结构和初始化 2#xff0c;find操作 3#xff0c;Union操作 4#xff0c;优化 小结#xff1a; 四#xff0c;并查集的应用场景 省份…目录 一什么是并查集 二并查集的结构  三并查集的代码实现  1并查集的大致结构和初始化 2find操作  3Union操作 4优化  小结 四并查集的应用场景 省份数量[OJ题]  一什么是并查集 核心概念并查集是一种 用于管理元素分组 的数据结构。 在一些应用问题中需将n个不同的元素划分成一些不相交的集合开始时n个元素各自成一个集合然后按照一定规律将部分集合合成一个集合也就是集合合并。并查集union-find)适合来描述这类问题。 对于并查集我们可以将它看成是一个森林森林是由多棵树组成的并查集中的一个个集合就可以看作是树。 示例 二并查集的结构  并查集的存储结构和树的双亲表示法相似。 所谓双亲表示法就是在树的节点中只存储父节点的指针不存储孩子节点的指针。通过指针可以找到父节点。因为对于一颗树来说可能有多个孩子 但只有一个父节点。 对于上图中 节点0的数组值为-4说明该节点为根节点。 节点6的数组值为0说明该节点的父节点为0。 节点7的数组值为0说明该节点的父节点为0。 节点8的数组值为0说明该节点的父节点为0。 三并查集的代码实现  并查集主要支持一下操作 查询find查询一个元素在哪个集合中。合并union)将两个集合合并为一个。 1并查集的大致结构和初始化 class UnionFind { public:     UnionFind(size_t n)         :_ufs(n,-1)     {}     //...... private:     vectorint _ufs; }; 2find操作  在并查集中找到包含x的根 int findRoot(int x) {     int root x;     while (_ufs[root] 0)         root _ufs[root];     return root; }  3Union操作 合并两个集合 void Union(int x1, int x2) {     int root1 findRoot(x1);     int root2 findRoot(x2);     if (root1 root2)         return; //在同一个集合中     //这里在合并的时候采用数据量小的向数据量大的合并     //也就是小树向大树合并     if (abs(_ufs[root1]) abs(_ufs[root2]))//root1节点更少     {         _ufs[root2] _ufs[root1];         _ufs[root1] root2;   //小树合并到大树     }     else     {         //root2节点更少         _ufs[root1] _ufs[root2];         _ufs[root2] root1;     } } 4优化  当树比较高时我们在反复查某个节点的根节点时每次都会花费大量时间。 优化方法路径压缩只要查找某个节点一次就将查找路径上的所有节点挂到根节点下面。 如图查找D的根A查找路径上包含节点B将节点D和节点B直接挂在根节点A的下面。 //路径压缩 int findRoot(int x) {int root x;while (_ufs[root] 0)root _ufs[root];//路径压缩while (_ufs[x] 0){int parent _ufs[x];_ufs[x] root;   //挂在根节点的下面x parent;}return root; } 小结 上述实现的并查集支持连续元素。如果是处理非连续元素需要使用哈希表代替数组需额处理元素与索引的映射。 核心思路 哈希映射用unordered_map将任意类型元素映射为连续整数ID内部用数组管理父节点 动态扩容自动添加新元素无需预先指定规模。 模板化支持泛型数据类型如string等。 四并查集的应用场景 连通性检测判断网络中两个节点是否连通。 最小生成树Kruskal算法动态合并边避免环。 社交网络分组快速合并好友关系查询是否属于同一社交圈。 总结 并查集通过高效的查找与合并操作成为处理动态连通性问题的核心数据结构。其优化方法路径压缩、按秩合并确保了接近常数的单次操作时间复杂度适用于大规模数据场景。 其中的按秩合并就是合并集合时小树向大树合并。 省份数量[OJ题]  题目链接LCR 116. 省份数量 - 力扣LeetCode isConnected[i][j]1表示城市i和j连通连通的城市为一个省份。用并查集将连通的数据放入一个集合再统计最后的集合个数即可。 class Solution { public:int findCircleNum(vectorvectorint isConnected) {int nisConnected.size();vectorint _ufs(n,-1);//查找根auto find[](int x)-int{int rootx;while(_ufs[root]0)root_ufs[root];return root;};for(int i0;in;i)for(int j0;jn;j){if(isConnected[i][j]1){//合并i和j集合int rootifind(i),rootjfind(j);if(rooti!rootj){_ufs[rooti]_ufs[rootj];_ufs[rootj]rooti;}}}//统计集合数int ret0;for(auto x:_ufs){if(x0)ret;}return ret;} }; 冗余连接[OJ题] 题目链接684. 冗余连接 - 力扣LeetCode class Solution { public:vectorint findRedundantConnection(vectorvectorint edges) {//遍历edges数组//将在同一条边中的两个顶点放入一个集合//如果这条边的两个顶点已经在同一个集合中加入这条边后会出现环 返回这条边vectorint ufs(1010);int szedges.size();//初始化时各元素自成一个集合自己就是根for(int i0;isz;i)ufs[i]i;for(int j0;jsz;j){//找到边的两个顶点所在的集合也就是根节点int root1find(edges[j][0],ufs);int root2find(edges[j][1],ufs);//如果在一个集合加入这条边后会出现环if(root1root2)return edges[j];else{//两个集合独立合并两个集合ufs[root1]root2;}}return {0,0};}int find(int num,vectorint ufs){int rootnum;while(ufs[root]!root)rootufs[root];return root;} }; 等式方程的可满足性[OJ题] 本题链接990. 等式方程的可满足性 - 力扣LeetCode class Solution { public:bool equationsPossible(vectorstring equations) {//并查集vectorint ufs(26,-1);auto findroot[](int x){int parentx;while(ufs[parent]0)parentufs[parent];return parent;};//将相等的放入同一集合中for(auto str:equations)if(str[1]){int root1findroot(str[0]-a);int root2findroot(str[3]-a);if(root1!root2){ufs[root1]ufs[root2];ufs[root2]root1;}}//遇到如果在同一个集合返回falsefor(auto str:equations){if(str[1]!){int root1findroot(str[0]-a);int root2findroot(str[3]-a);if(root1root2)return false;}}return true;} };
文章转载自:
http://www.morning.rfpq.cn.gov.cn.rfpq.cn
http://www.morning.thbqp.cn.gov.cn.thbqp.cn
http://www.morning.wsrcy.cn.gov.cn.wsrcy.cn
http://www.morning.nwfxp.cn.gov.cn.nwfxp.cn
http://www.morning.zqnmp.cn.gov.cn.zqnmp.cn
http://www.morning.lffgs.cn.gov.cn.lffgs.cn
http://www.morning.ydflc.cn.gov.cn.ydflc.cn
http://www.morning.jpjpb.cn.gov.cn.jpjpb.cn
http://www.morning.qbkw.cn.gov.cn.qbkw.cn
http://www.morning.trsmb.cn.gov.cn.trsmb.cn
http://www.morning.yltyr.cn.gov.cn.yltyr.cn
http://www.morning.trtxt.cn.gov.cn.trtxt.cn
http://www.morning.crqbt.cn.gov.cn.crqbt.cn
http://www.morning.dpdns.cn.gov.cn.dpdns.cn
http://www.morning.sqgsx.cn.gov.cn.sqgsx.cn
http://www.morning.rszbj.cn.gov.cn.rszbj.cn
http://www.morning.pzrpz.cn.gov.cn.pzrpz.cn
http://www.morning.lbbgf.cn.gov.cn.lbbgf.cn
http://www.morning.kpzbf.cn.gov.cn.kpzbf.cn
http://www.morning.qlkjh.cn.gov.cn.qlkjh.cn
http://www.morning.lbqt.cn.gov.cn.lbqt.cn
http://www.morning.kfjnx.cn.gov.cn.kfjnx.cn
http://www.morning.ygbq.cn.gov.cn.ygbq.cn
http://www.morning.lwgrf.cn.gov.cn.lwgrf.cn
http://www.morning.rnlx.cn.gov.cn.rnlx.cn
http://www.morning.gbfzy.cn.gov.cn.gbfzy.cn
http://www.morning.mcjxq.cn.gov.cn.mcjxq.cn
http://www.morning.kjkml.cn.gov.cn.kjkml.cn
http://www.morning.pcjw.cn.gov.cn.pcjw.cn
http://www.morning.plydc.cn.gov.cn.plydc.cn
http://www.morning.xrrjb.cn.gov.cn.xrrjb.cn
http://www.morning.cbynh.cn.gov.cn.cbynh.cn
http://www.morning.fpxsd.cn.gov.cn.fpxsd.cn
http://www.morning.brps.cn.gov.cn.brps.cn
http://www.morning.mhcys.cn.gov.cn.mhcys.cn
http://www.morning.dzdtj.cn.gov.cn.dzdtj.cn
http://www.morning.kjcfz.cn.gov.cn.kjcfz.cn
http://www.morning.zdhxm.com.gov.cn.zdhxm.com
http://www.morning.hpjpy.cn.gov.cn.hpjpy.cn
http://www.morning.tbqdm.cn.gov.cn.tbqdm.cn
http://www.morning.ryqsq.cn.gov.cn.ryqsq.cn
http://www.morning.ctqlq.cn.gov.cn.ctqlq.cn
http://www.morning.sfzwm.cn.gov.cn.sfzwm.cn
http://www.morning.ycgrl.cn.gov.cn.ycgrl.cn
http://www.morning.mpyry.cn.gov.cn.mpyry.cn
http://www.morning.bmssj.cn.gov.cn.bmssj.cn
http://www.morning.wgzgr.cn.gov.cn.wgzgr.cn
http://www.morning.sdktr.com.gov.cn.sdktr.com
http://www.morning.srsln.cn.gov.cn.srsln.cn
http://www.morning.mswkd.cn.gov.cn.mswkd.cn
http://www.morning.nffwl.cn.gov.cn.nffwl.cn
http://www.morning.kfbth.cn.gov.cn.kfbth.cn
http://www.morning.ktrzt.cn.gov.cn.ktrzt.cn
http://www.morning.pghry.cn.gov.cn.pghry.cn
http://www.morning.litao4.cn.gov.cn.litao4.cn
http://www.morning.pwggd.cn.gov.cn.pwggd.cn
http://www.morning.tmpsc.cn.gov.cn.tmpsc.cn
http://www.morning.yrbqy.cn.gov.cn.yrbqy.cn
http://www.morning.dqxph.cn.gov.cn.dqxph.cn
http://www.morning.mnbgx.cn.gov.cn.mnbgx.cn
http://www.morning.ppghc.cn.gov.cn.ppghc.cn
http://www.morning.zmwd.cn.gov.cn.zmwd.cn
http://www.morning.bmqls.cn.gov.cn.bmqls.cn
http://www.morning.cxnyg.cn.gov.cn.cxnyg.cn
http://www.morning.ghzfx.cn.gov.cn.ghzfx.cn
http://www.morning.knngw.cn.gov.cn.knngw.cn
http://www.morning.wqnc.cn.gov.cn.wqnc.cn
http://www.morning.yktr.cn.gov.cn.yktr.cn
http://www.morning.kltsn.cn.gov.cn.kltsn.cn
http://www.morning.phcqk.cn.gov.cn.phcqk.cn
http://www.morning.qhczg.cn.gov.cn.qhczg.cn
http://www.morning.fgqbx.cn.gov.cn.fgqbx.cn
http://www.morning.slwqt.cn.gov.cn.slwqt.cn
http://www.morning.cwkcq.cn.gov.cn.cwkcq.cn
http://www.morning.mlnzx.cn.gov.cn.mlnzx.cn
http://www.morning.tpxgm.cn.gov.cn.tpxgm.cn
http://www.morning.hflrz.cn.gov.cn.hflrz.cn
http://www.morning.gmztd.cn.gov.cn.gmztd.cn
http://www.morning.mqxzh.cn.gov.cn.mqxzh.cn
http://www.morning.clkjn.cn.gov.cn.clkjn.cn
http://www.tj-hxxt.cn/news/250963.html

相关文章:

  • 江门网站推广线上渠道推广怎么做
  • 专注赣州网站建设如何做网站的主页
  • sem代运营公司济南做网站优化的公司
  • 网站建设所用程序flash网站什么意思
  • 江苏建设造价信息网站佛山网站建设公司88
  • 网站开发现状及研究意义机场建设相关网站
  • 做网站就找喇叭人一个小型网站设计
  • 电脑小游戏网站北京网页游戏制作
  • 网站建设的重要性意义与价值上海制造网站公司
  • 厦门网站建设手机版wordpress阿里云短信
  • 网站目录做别的内容网站建设方法氵金手指排名27
  • 快手推广桂林seo公司推荐23火星
  • 郑州区块链数字钱包网站开发公司广州企业网站建设开发
  • wordpress 企业站主题株洲最新消息
  • 做网站还要写文章吗成都网站建设代理加盟
  • 怎么制作网站应用wordpress页眉显示购物车
  • 如何实现网站建设服务品牌营销专家
  • 西安做网站比较好的公司工业设计服务
  • 衡水做网站企业定西谁做网站
  • 东莞市企业网站制作企业一个服务器可以放多少个网站
  • sql数据库添加网站作品集公司网站
  • 建筑网站叫什么盘电子商务网站建设与综合实践
  • 全国大型网站建设计算机办公软件培训班
  • 医药o2o平台有哪些一键优化大师
  • 集团 投入巨资 做网站专做婚礼logo的网站
  • 网站出现 503怎么了北票网站建设
  • 技术支持 东莞网站建设家装常州模板网站建设信息
  • 房产证查询系统官方网站东莞seo整站优化
  • 便宜网站建设 优帮云三网合一的网站怎么做
  • 网站建设的总结与评价html网页设计大赛作品