AW: Sorting with Infinity
- To: mathgroup at smc.vnet.net
- Subject: [mg23518] AW: [mg23513] Sorting with Infinity
- From: Wolf Hartmut <hwolf at debis.com>
- Date: Tue, 16 May 2000 22:29:51 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
-----Ursprüngliche Nachricht----- Von: Jack Goldberg [SMTP:jackgold at math.lsa.umich.edu] Gesendet am: Dienstag, 16. Mai 2000 08:45 An: mathgroup at smc.vnet.net Betreff: [mg23513] Sorting with Infinity Hi group; I construct lists which may look like this {7,-2,-Infinity,Infinity,1} When this list is sorted by using Sort, I get {-2,1,7,-Infinity,Infinity} I would prefer, naturally, {-Infinity,-2,1,7,Infinity} This is easy to do if one doesn't care about elegance. Without spelling out the obvious details, here are a few kludges: (1) Replace Infinity by 10^15, Sort then switch back to Infinity. (2) Use Append and Prepend after Sort and deleting infinities. (3) RotateRight after Sort and switch signs on infinities Anyone got a "cute" solution say by using a sorting function or perhaps some arcane command unknown to mere mortals? Hello Jack, Sort uses canonical order, and such obviously just recognizes Infinity as a Symbol, see: Sort[{7, -2, Infamity, -Infinity, Infinity, 1, -Infamity}] {-2, 1, 7, -Infamity, Infamity, -Infinity, Infinity} This is the same as explicitly using the ordering function OrderedQ: Sort[{7, -2, -Infinity, Infinity, 1}, OrderedQ[{#1, #2}] &] {-2, 1, 7, -Infinity, Infinity} But choosing numerical ordering helps: Sort[{7, -2, -Infinity, Infinity, 1}, Less] {-Infinity, -2, 1, 7, Infinity} Hartmut