Re: I don't know how to ....
- To: mathgroup at smc.vnet.net
- Subject: [mg2425] Re: I don't know how to ....
- From: rubin at msu.edu (Paul A. Rubin)
- Date: Sun, 5 Nov 1995 16:06:51 -0500
- Organization: Michigan State University
In article <471hgv$gb3 at ralph.vnet.net>, bientin at cli.di.unipi.it (Paolo Bientinesi) wrote: ->Hi all, ->here's my problem: ->I need a function that takea as input a list of pairs; ->the first element of every pair is a list, the second one is an integer; ->I want the function to calculate thhe ->biggest integer and to give as output the corresponding list. -> ->I didn't succeeded. ->thanks ->Paul DJ a -> -> -> In[1]:= Clear[f]; f[ x:{{_List, _Integer}..} ] := Sort[ Reverse /@ x ][[-1, 2]] In[2]:= xx = {{{a,b,c}, 5}, {{d,e}, -3}, {{f,g,h,i}, 7}}; In[3]:= f[xx] Out[3]= {f, g, h, i} This is a trifle inefficient if your list is long, since it sorts the entire list (rather than just isolating the largest integer). For long lists, a partial bubble sort might be better. Also, I've ignored the question of resolving ties for largest integer; you might prefer to print all lists whose integers are tied (assuming ties can occur in your context). Paul Rubin ************************************************************************** * Paul A. Rubin Phone: (517) 432-3509 * * Department of Management Fax: (517) 432-1111 * * Eli Broad Graduate School of Management Net: RUBIN at MSU.EDU * * Michigan State University * * East Lansing, MI 48824-1122 (USA) * ************************************************************************** Mathematicians are like Frenchmen: whenever you say something to them, they translate it into their own language, and at once it is something entirely different. J. W. v. GOETHE