Re: sorting problem
- To: mathgroup at smc.vnet.net
- Subject: [mg130656] Re: sorting problem
- From: Sid <pcoords29 at gmail.com>
- Date: Tue, 30 Apr 2013 04:18:24 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-outx@smc.vnet.net
- Delivered-to: mathgroup-newsendx@smc.vnet.net
- References: <klia8j$s8j$1@smc.vnet.net>
On Apr 28, 8:57 am, S <dsalma... at gmail.com> wrote: > Hello > > I need to sort a list in increasing magnitude. If two elements in the list are the same, the element which appears EARLIER in the list should appear first. Finally, I need the indices of the sorted list according to the above two rules. > > e.g. for input > distances = {0, Sqrt[2], Sqrt[2], 0, 0, Sqrt[2], 2, Sqrt[2]} > I need the answer to be > k={1,4,5,2,3,6,8,7} > > I tried the following commands: Hi, How about Ordering@N@distances HTH Cheers Sid > distances = {0, Sqrt[2], Sqrt[2], 0, 0, Sqrt[2], 2, Sqrt[2]} > Sorteddistances = Sort[distances, Less] > k = Ordering[distances] > > I get output k={1, 4, 5, 7, 2, 3, 6, 8}. > > However, I want the output k={1,4,5,2,3,6,8,7} > > Can someone please suggest how to do this. > > Thanks > > S