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

遵义哪里有做网站的怎么用pf做网站

遵义哪里有做网站的,怎么用pf做网站,深圳市企业网站seo联系方式,企业微信公众平台开发目录 并查集路径压缩 Java 实例代码 UnionFind3.java 文件代码#xff1a; 并查集路径压缩 并查集里的 find 函数里可以进行路径压缩#xff0c;是为了更快速的查找一个点的根节点。对于一个集合树来说#xff0c;它的根节点下面可以依附着许多的节点#xff0c;因此 并查集路径压缩 并查集里的 find 函数里可以进行路径压缩是为了更快速的查找一个点的根节点。对于一个集合树来说它的根节点下面可以依附着许多的节点因此我们可以尝试在 find 的过程中从底向上如果此时访问的节点不是根节点的话那么我们可以把这个节点尽量的往上挪一挪减少数的层数这个过程就叫做路径压缩。 如下图中find(4) 的过程就可以路径压缩让数的层数更少。 节点 4 往上寻找根节点时压缩第一步树的层数就减少了一层 节点 2 向上寻找也不是根节点那么把元素 2 指向原来父节点的父节点操后后树的层数相应减少了一层同时返回根节点 0。 find 过程代码修改为 // 查找过程, 查找元素p所对应的集合编号 // O(h)复杂度, h为树的高度 private int find(int p){     assert( p 0 p count );     // path compression 1     while( p ! parent[p] ){         parent[p] parent[parent[p]];         p parent[p];     }     return p; } 上述路径压缩并不是最优的方式我们可以把最初的树压缩成下图所示层数是最少的。 这个 find 过程代表表示为: ... // 查找过程, 查找元素p所对应的集合编号 // O(h)复杂度, h为树的高度 private int find(int p) {     assert (p 0 p count);     //第二种路径压缩算法     if (p ! parent[p])         parent[p] find(parent[p]);     return parent[p]; } ... Java 实例代码 源码包下载Download UnionFind3.java 文件代码 package runoob.union; /**  * 基于rank的优化  */ public class UnionFind4 {     private int[] rank;   // rank[i]表示以i为根的集合所表示的树的层数     private int[] parent; // parent[i]表示第i个元素所指向的父节点     private int count;    // 数据个数     // 构造函数     public UnionFind4(int count){         rank new int[count];         parent new int[count];         this.count count;         // 初始化, 每一个parent[i]指向自己, 表示每一个元素自己自成一个集合         for( int i 0 ; i count ; i ){             parent[i] i;             rank[i] 1;         }     }     // 查找过程, 查找元素p所对应的集合编号     // O(h)复杂度, h为树的高度     private int find(int p){         assert( p 0 p count );         // 不断去查询自己的父亲节点, 直到到达根节点         // 根节点的特点: parent[p] p         while( p ! parent[p] )             p parent[p];         return p;         //第二种路径压缩算法         //if( p ! parent[p] )         //parent[p] find( parent[p] );         //return parent[p];     }     // 查看元素p和元素q是否所属一个集合     // O(h)复杂度, h为树的高度     public boolean isConnected( int p , int q ){         return find(p) find(q);     }     // 合并元素p和元素q所属的集合     // O(h)复杂度, h为树的高度     public void unionElements(int p, int q){         int pRoot find(p);         int qRoot find(q);         if( pRoot qRoot )             return;         if( rank[pRoot] rank[qRoot] ){             parent[pRoot] qRoot;         }         else if( rank[qRoot] rank[pRoot]){             parent[qRoot] pRoot;         }         else{ // rank[pRoot] rank[qRoot]             parent[pRoot] qRoot;             rank[qRoot] 1;   // 维护rank的值         }     } }
http://www.dnsts.com.cn/news/58263.html

相关文章:

  • 珠海集团网站制作外包采集网站图片
  • 山西制作网站公司排名建设部建设厅报考网站
  • 营销方案策划谷歌seo文章
  • 东莞设计制作网站制作免费创建论坛网站
  • 莱芜网站建设做可以上传文件的网站
  • 购物网站开发毕业设计西安专业网站制作服务
  • 商务网站设计实训报告线在科技成都网站推广公司
  • 网页优化最为重要的内容是网站优化建设上海
  • 网站投放广告多少钱装潢设计主要学什么
  • 开发网站做什么长沙排名优化公司
  • 网站美工做图推荐网站建设考察报告
  • 物流网站开题报告书店手机网站模板
  • 免费开源门户网站系统怎么编辑网站内容
  • 工艺品做网站wordpress美化文章标题
  • 老年夫妻做爰视频网站婚恋网站的渠道网络建设
  • 企业网站建设实训报告规划营销型网站结构
  • 网站建设公司人员组成信息化网站建设有什么用
  • 学校网站建设实施方案文化建设的重要性和意义
  • 南宁网站建设升上去页面优化主要从哪些方面进行
  • 成都网站建设推广在线咨询wordpress分页导航菜单
  • 网站什么时候备案好手机版网站开发实例
  • 做公司网站需要什么资料华为公司网站建设方案模板下载
  • 长春网站推广网诚传媒如何为旅游网站店铺做推广营销
  • 专业微网站建设公司网站建设相关问题
  • 网站支付界面怎么做用什么自己做网站
  • 如何设计网站的链接互联网外包公司有哪些
  • 360网站建设网站备案 和 icp
  • 网站推广 软件广州网站建设哪个公司做得好些
  • 浙江东阳市网站建设公司html网站建设实录
  • 两个域名指向同一个网站怎么做北京市建设工程