Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re: Code requested for array intersection count

by dvergin (Monsignor)
on Jun 09, 2003 at 15:26 UTC ( #264354=note: print w/ replies, xml ) Need Help??

in reply to Code requested for array intersection count

As 3dan notes, this question has been asked and answered many times. But just for fun, here's a quick (tested) solution that takes a different approach from that of tcf22. This leaves a hash (%counts) with all the results available for later processing. (tcf22's approach could be adjusted to do that also.)

#!/usr/bin/perl -w use strict; my @array_1 = qw/A B/; my @array_2 = qw/A B C D A D B A C/; my %check_1 = map { $_ => 1 } @array_1; my %counts; map { $counts{$_}++ if $check_1{$_} } @array_2; print "$_ : $counts{$_}\n" for keys %counts;
Which results in:

    A : 3
    B : 2

"Perl is a mess and that's good because the
problem space is also a mess.
" - Larry Wall

Comment on Re: Code requested for array intersection count
Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://264354]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (8)
As of 2015-11-25 20:25 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (690 votes), past polls