Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: get the Difference between two arrays

by davido (Cardinal)
on Apr 02, 2018 at 18:53 UTC ( [id://1212194]=note: print w/replies, xml ) Need Help??


in reply to get the Difference between two arrays

This is addressed in perlfaq4 at How do I compute the difference of two arrays. The code there could be adapted to your specific need pretty easily.

Here's the code from perlfaq4:

my (@union, @intersection, @difference); my %count = (); foreach my $element (@array1, @array2) { $count{$element}++ } foreach my $element (keys %count) { push @union, $element; push @{ $count{$element} > 1 ? \@intersection : \@difference } +, $element; }

Here's one way to adapt it.

sub difference { my $array_ref1 = shift; my $array_ref2 = shift; my @difference; foreach my $element (@$array_ref1, @$array_ref2) { $count{$element +}++ }; foreach my $element (keys %count) { push @difference, $element if $count{$element} == 1; } return \@difference; }

(please do test it -- this is untested code.)


Dave

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (9)
As of 2024-04-18 08:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found