RE: Strange behavior of Sort
- To: mathgroup at smc.vnet.net
- Subject: [mg12968] RE: [mg12941] Strange behavior of Sort
- From: Ersek_Ted%PAX1A at mr.nawcad.navy.mil
- Date: Sun, 28 Jun 1998 02:51:56 -0400
- Sender: owner-wri-mathgroup at wolfram.com
Edward Neuman wrote: | | |In Mathematica 3.0: | |In[5]:= |li={1/Sqrt[2], 1, -Sqrt[2]}; | |In[7]:= |Sort[li]//InputForm | |Out[7]//InputForm= |{1, 1/Sqrt[2], -Sqrt[2]} | |Sort doesn't work properly on this list. | | Lets look at that some more. In[1]:= lst={-1,0,1,-2,2,Sqrt[2],-Sqrt[2],1/Sqrt[2],-1/Sqrt[2]}; As you pointed out simple application of Sort will not sort them in increasing order. In[2]:= Sort[lst]//N Out[2]= {-2., -1., 0, 1., 2., -0.707107, 0.707107, -1.41421, 1.41421} If you want them sorted numerically you can specify an appropriate ordering function. In[3]:= Sort[lst, Less]//N Out[3]= {-2., -1.41421, -1., -0.707107, 0, 0.707107, 1., 1.41421, 2.} Now what is the default ordering function? Dave Withoff posted it once, but I didn't understand what he was saying. Ted Ersek