MATLAB: Find match for a pair of rows in cell arrays

indexingMATLABpair

I have 2 cell arrays of equal length, e.g.
>> alfa = {'a'; 'b'; 'c'; 'b'; 'a'; 'c'}
alfa =
'a'
'b'
'c'
'b'
'a'
'c'
>> beta = {'b'; 'd'; 'a'; 'd'; 'a'; 'a'}
beta =
'b'
'd'
'a'
'd'
'a'
'a'
and I want to find where the pairs are repeated, which pair is it and the index where the repeated pairs are located.
So, in this case the index 2 and 4 correspond to the repeated pair 'b' and 'd', and the index 3 and 6 correspond to the repeated pair 'c' and 'a'. It is important that I know which pair is it and all the indexes where this pair is repeated.
Thank you.

Best Answer

Adam's on the right track, just didn't quite recognize the problem description--
>> ab=[char(alfa) char(beta)]; % mush the two arrays together
>> [u,ia,ib]=unique(ab,'rows'); % get the combinations that are extant
>> u(histc(ib,unique(ib))>1,:) % find the ones with more than one occurrence
ans =
bd
ca
>>
The alternate returns from histc and unique will provide the positions.