Week1-3Quick Union
来源:互联网 发布:java七牛上传视频接口 编辑:程序博客网 时间:2024/06/06 09:53
Data Structure
- Integer array id[] of size N
- Root of i isid[id[id[…id[i]…]]](keep going until it doesn’t change)
Operations
- Find( p, q ): check if p and q have the same root
- Union( p, q ): to merge components containing p and q, set id of p’s root to the id of q’s root
Implementation
public class QuickUnionUF { private int[] id; public QuickUnionUF( int N ) { id = new int[N]; for( int i = 0; i< N; i++ ) { id[i] = i; } } private int root( int i ) { // chase parent pointer until reach root while( i != id[i] ) { i = id[i]; } return i; } public boolean connected( int p, int q ) { return root( p ) == root( q ); } public void union( int p, int q ) { int i = root( p ), j = root( q ); id[i] = j; } }
Cost Model
Defects
0 0
- Week1-3Quick Union
- Week1-2Quick Find
- quick-union
- Quick-Union
- Quick Union
- Week1-4Qucik-Union Improvments
- Week1-5Union-Find Applications
- 【算法】quick union
- Quick-Union[Algorithm]
- quick-union【连通图】
- 算法 加权quick-union
- 加权quick-union算法
- 3.weighted quick union
- 2.quick find and quick union
- 1.3:Union-Find算法-----quick-union算法
- union-find中(quick-union)算法
- union-find下(加权quick-union)算法
- Weighted version of quick union
- java 关于继承中构造器和方法的调用
- 对数据库语言的简单认识
- Android 文字自动滚动(跑马灯)效果的两种实现方法
- 继承多态
- TelephonyManager类方法详解
- Week1-3Quick Union
- iOS架构设计专题
- ccf 201412-3 集合竞价
- Eclipse去除js(JavaScript)验证错误
- java中this关键字
- openstack部署(2)-安装keystone组件
- Android中线程池的使用
- 指针
- SPNEGO, NTLM and Kerberos