1
$\begingroup$

I was wondering if there is a possible way to still use OrderedQ and get a descending order of permutations: This is Ascending order:

Select[Tuples[{1, 2, 3, 4, 5}, {3}], OrderedQ]
{{1, 1, 1}, {1, 1, 2}, {1, 1, 3}, {1, 1, 4}, {1, 1, 5}, {1, 2, 2},
{1, 2, 3}, {1, 2, 4}, {1, 2, 5}, {1, 3, 3}, {1, 3, 4}, {1, 3, 5},
{1, 4, 4}, {1, 4, 5}, {1, 5, 5}, {2, 2, 2}, {2, 2, 3}, {2, 2, 4},
{2, 2, 5}, {2, 3, 3}, {2, 3, 4}, {2, 3, 5}, {2, 4, 4}, {2, 4, 5},
{2, 5, 5}, {3, 3, 3}, {3, 3, 4}, {3, 3, 5}, {3, 4, 4}, {3, 4, 5},
 {3, 5, 5}, {4, 4, 4}, {4, 4, 5}, {4, 5, 5}, {5, 5, 5}

And i need them in Descending order, for eg:

{{3,2,1},{3,1,1},{1,1,1}.. etc}

Please help me :)

$\endgroup$
  • 1
    $\begingroup$ What if you just replace 1->6, 2->5,3->4,4->3,5->2,6->1? $\endgroup$ – Sjoerd C. de Vries May 23 '15 at 12:22
  • 2
    $\begingroup$ Related: (82522), (83791), (83938), (84023), (84147) $\endgroup$ – Mr.Wizard May 23 '15 at 12:24
  • $\begingroup$ How about using Reverse on your output lists? Or using OrderedQ@Reverse@#& as your test function? $\endgroup$ – Mr.Wizard May 23 '15 at 12:25
  • $\begingroup$ ... or Select[Tuples[Reverse@{1, 2, 3, 4, 5}, {3}], GreaterEqual @@ # &] $\endgroup$ – kglr May 23 '15 at 13:51
  • $\begingroup$ Ok thanks guys! $\endgroup$ – Andrej May 23 '15 at 16:36
3
$\begingroup$

Some options:

t = Tuples[{1, 2, 3, 4, 5}, {3}];

Reverse /@ Select[t, OrderedQ]

Select[t, OrderedQ] ~Reverse~ 2

Select[t, OrderedQ @* Reverse]

Select[t, Reverse /* OrderedQ]

Select[t, OrderedQ[#, GreaterEqual] &]

6 - Select[t, OrderedQ]
$\endgroup$
  • $\begingroup$ Wow, thanks so much! $\endgroup$ – Andrej May 23 '15 at 16:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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