[Haskell-cafe] Permutations

Luke Palmer lrpalmer at gmail.com
Sun Nov 30 11:17:55 EST 2008


On Sun, Nov 30, 2008 at 9:06 AM, Jake Mcarthur <jake at pikewerks.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Nov 30, 2008, at 9:03 AM, Andrew Coppin wrote:
>>
>> OK, so here's something just for fun:
>>
>> Given a list of items, find all possible *unique* permutations of that
>> list. (E.g., the input list is explicitly _allowed_ to contain duplicates.
>> The output list should not contain any duplicate permutations.)
>>
>> I've found one simple way to do this, but I'm sure there are multiple
>> valid approaches. So let's see what people come up with. ;-)
>
> Seems a bit easy, I think.
>
>    Data.List.permutations . nub

That is not what he meant.  Given:

  [1,1,2,2]

The results should be:

  [1,1,2,2]
  [1,2,2,1]
  [2,2,1,1]
  [1,2,1,2]
  [2,1,2,1]
  [2,1,1,2]

Assuming I didn't miss any...

Luke


More information about the Haskell-Cafe mailing list