private ArrayList<Signature> constructOneSignatures(SetDBIDs[][] partitions,final long[][] markers){
  final int dim=partitions.length;
  ArrayList<Signature> signatures=new ArrayList<>();
  for (int d=0; d < dim; d++) {
    final DBIDs[] parts=partitions[d];
    if (parts == null) {
      continue;
    }
    final long[] marked=markers[d];
    for (int start=BitsUtil.nextSetBit(marked,0); start >= 0; ) {
      int end=BitsUtil.nextClearBit(marked,start + 1);
      end=(end == -1) ? dim : end;
      int[] signature=new int[dim << 1];
      Arrays.fill(signature,-1);
      signature[d << 1]=start;
      signature[(d << 1) + 1]=end - 1;
      HashSetModifiableDBIDs sids=unionDBIDs(parts,start,end);
      if (LOG.isDebugging()) {
        LOG.debug("1-signature: " + d + " "+ start+ "-"+ (end - 1));
      }
      signatures.add(new Signature(signature,sids));
      start=(end < dim) ? BitsUtil.nextSetBit(marked,end + 1) : -1;
    }
  }
  return signatures;
}

private ArrayList < Signature > constructOneSignatures ( SetDBIDs [ ] [ ] partitions , final long [ ] [ ] markers ) { final int dim = partitions . length ; ArrayList < Signature > signatures = new ArrayList < > ( ) ; for ( int d = 0 ; d < dim ; d ++ ) { final DBIDs [ ] parts = partitions [ d ] ; if ( parts == null ) { continue ; } final long [ ] marked = markers [ d ] ; for ( int start = BitsUtil . nextSetBit ( marked , 0 ) ; start >= 0 ; ) { int end = BitsUtil . nextClearBit ( marked , start + 1 ) ; end = ( end == - 1 ) ? dim : end ; int [ ] signature = new int [ dim << 1 ] ; Arrays . fill ( signature , - 1 ) ; signature [ d << 1 ] = start ; signature [ ( d << 1 ) + 1 ] = end - 1 ; HashSetModifiableDBIDs sids = unionDBIDs ( parts , start , end ) ; if ( LOG . isDebugging ( ) ) { LOG . debug ( "1-signature: " + d + " " + start + "-" + ( end - 1 ) ) ; } signatures . add ( new Signature ( signature , sids ) ) ; start = ( end < dim ) ? BitsUtil . nextSetBit ( marked , end + 1 ) : - 1 ; } } return signatures ; }
construct the 1 - signatures by merging adjacent dense bins .
