protected CLIQUEUnit join ( CLIQUEUnit other , double all , double tau ) { if ( other . dimensionality ( ) != this . dimensionality ( ) ) { return null ; } // n-1 dimensions must be the same: int e = dims . length - 1 ; if ( ! checkDimensions ( other , e ) ) { return null ; } if ( dims [ e ] >= other . dims [ e ] ) { return null ; } HashSetModifiableDBIDs resultIDs = DBIDUtil . newHashSet ( this . ids ) ; resultIDs . retainAll ( other . ids ) ; if ( resultIDs . size ( ) / all < tau ) { return null ; } return new CLIQUEUnit ( this , other . dims [ e ] , other . bounds [ e << 1 ] , other . bounds [ ( e << 1 ) + 1 ] , resultIDs ) ; }
Joins this unit with the specified unit .