MathGroup Archive 2002

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

Search the Archive

RE: List processing

  • To: mathgroup at smc.vnet.net
  • Subject: [mg37225] RE: List processing
  • From: "David Park" <djmp at earthlink.net>
  • Date: Thu, 17 Oct 2002 00:09:01 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

John,

Use the Interval routine.

Interval @@ {{100, 200}, {150, 250}, {120, 270}, {300, 400}}
List @@ %

giving...

Interval[{100, 270}, {300, 400}]
{{100, 270}, {300, 400}}

David Park
djmp at earthlink.net
http://home.earthlink.net/~djmp/



From: John Leary [mailto:leary at paradise.net.nz]
To: mathgroup at smc.vnet.net

Greetings

This problem can be solved by conventional programming, but I wonder if
there is an elegant Mathematica solution ?

A list contains pairs of values, with each pair representing the lower and
upper edge of a sub-range.  Some of the sub-ranges partially overlap, some
fully overlap, others don't overlap at all.  The problem is to produce a
second list that contains the overall upper and lower edges of the
overlapping sub-ranges.

A simple example :  {{100,200},{150,250},{120,270},{300,400}}  would result
in {{100,270},{300,400}}.

In the real case, the input list has several hundred elements and the
output list typically has five elements.

I have a working solution based on loops, but there must be a more elegant
one.  I would be very grateful for any suggestions.


Best regards

John Leary





  • Prev by Date: Re: List processing
  • Next by Date: RE: List processing
  • Previous by thread: Re: List processing
  • Next by thread: RE: List processing