MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

List of multiple elements


Given the list

a={1,1,2,1,2};

we can reduce multiple instances of elements using

b=Union[a]
{1,2}

The question is now how to compute the list of multiple elements.
In our example this would be m={1,1,2}.

A possible solution is

m[x_]:= Flatten[Take[#, {1, Length[#] - 1}] & /@ Select[Split[x], 
Length[#] > 1 &]]

m[a]
{1,1,2}

I'm sure there is a much more elegant solution. Can you suggest one?

Remark

m[a] can be viewed as a kind of difference: m[a] = a "MINUS" Union[a]
Inverting gives the "SUM": a = m[a] "PLUS" Union[a] = 
Join[m[a],Union[a]]

Regards,
Wolfgang 



  • Prev by Date: NotebookAutoSave?
  • Next by Date: Re: finding a symplectic recursion fixed point
  • Previous by thread: Re: NotebookAutoSave?
  • Next by thread: Re: List of multiple elements