tstruct
Version:
Data structures & basic algorithms library
24 lines (23 loc) • 675 B
TypeScript
export interface IUnionFind<T> {
add(item: T): void;
union(item1: T, item2: T): void;
find(item: T): T;
size(item: T): number;
isConnected(item1: T, item2: T): boolean;
readonly numberOfComponents: number;
}
export declare class UnionFind<T> implements IUnionFind<T> {
private _objectToId;
private _idToObject;
private _arr;
private _sizes;
private _numberOfComponents;
constructor();
get numberOfComponents(): number;
add(item: T): void;
union(item1: T, item2: T): void;
find(item: T): T;
private findIndex;
size(item: T): number;
isConnected(item1: T, item2: T): boolean;
}