If you have a list of items and you want to randomly pair the items in the list together, what kind of algorithm would you use to do that, such that the items can only be matched to one other item.

1 Answer 1


Randomize the list and then grab pairs of adjacent items.

(I'm not sure I understand your last requirement, "the items can only be matched to one other item." If I haven't fully answered your question, please edit the question to expand on that point.)

  • I could be wrong, but I think the only way to interpret that last line is that if you generate a pair A-C (out of a list of values from A-Z) none of the other pairs can have either A or C. Repeat this until all items have been paired-off. So in a list of items numbering 'n' (where n is even), there will be 'n'/2 pairs with no pairs having an element in common. Nov 29, 2011 at 4:38
  • That is correct Dan. Nov 29, 2011 at 4:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.