diff options
Diffstat (limited to 'sourcecodes/bnt-master/KPMtools/myintersect.m')
| -rw-r--r-- | sourcecodes/bnt-master/KPMtools/myintersect.m | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/sourcecodes/bnt-master/KPMtools/myintersect.m b/sourcecodes/bnt-master/KPMtools/myintersect.m new file mode 100644 index 00000000..c1886efb --- /dev/null +++ b/sourcecodes/bnt-master/KPMtools/myintersect.m @@ -0,0 +1,28 @@ +function C = myintersect(A,B) +% MYINTERSECT Intersection of two sets of positive integers (much faster than built-in intersect) +% C = myintersect(A,B) + +A = A(:)'; B = B(:)'; + +if isempty(A) + ma = 0; +else + ma = max(A); +end + +if isempty(B) + mb = 0; +else + mb = max(B); +end + +if ma==0 || mb==0 + C = []; +else + %bits = sparse(1, max(ma,mb)); + bits = zeros(1, max(ma,mb)); + bits(A) = 1; + C = B(logical(bits(B))); +end + +%sum( bitget( bitand( cliquesb(i), cliquesb(j) ), 1:52 ) ); |
