Re: question in mathematica

• To: mathgroup at smc.vnet.net
• Subject: [mg80143] Re: question in mathematica
• From: m.r at inbox.ru
• Date: Mon, 13 Aug 2007 04:42:06 -0400 (EDT)
• References: <fa11b990e477.46baf2d3@bgu.ac.il>

```On Aug 11, 1:43 am, Andrzej Kozlowski <a... at mimuw.edu.pl> wrote:
> First, please send such question to the MathGroup,
>
> mathgr... at smc.vnet.net
>
> not me personally. (I really have desire, tiem or ability to replace
> the enitre MathGroup.)
> So I have decided to post this question to the MathGroup in case
> someone else finds it interesting.
>
> me that make sme suspicious.  What do you say "you need to use
> recursion and pattern matching, Select and Join"? This sounds to me
> like some sort of test problem so I have decided to answer it but
> without using any of these functions (although it may not be the
> simplest way to do this). So here is my answer:
>
>   ls = {9, 2, 10, 3, 14, 9};
>
> Reverse[Last[Last[Reap[NestWhile[With[{a = First[Ordering[#, -1]]},
> Sow[#[[a]]]; Take[#, a - 1]] &,ls,Length[#] > 0 &]]]]]
>
> {9, 10, 14}
>
> On 10 Aug 2007, at 10:12, Ivan Egorov wrote:
>
> > I have one more question.
>
> > Write a function maxima[lis_List] which, given a list of numbers,
> > produces a list of those
>
> > numbers greater than all those that precede them. For example
>
> > maxima[{ 9, 2, 10, 3, 14, 9}] returns { 9, 10, 14}. You need to use
> > recursion, pattern matching,
>
> > Select and Join.
>
> > =E2=80=8E

I'll make it easier for myself and use pattern matching:

In[1]:= ReplaceList[{9, 2, 10, 3, 14, 9},
{s___, x_, ___} /; Max[s] < x :> x]

Out[1]= {9, 10, 14}

Maxim Rytin
m.r at inbox.ru

```

• Prev by Date: Re: Reading Coordinates from Plot
• Next by Date: Re: Increasing scattered subsequence
• Previous by thread: Re: question in mathematica
• Next by thread: RE: Re: question in mathematica