Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #36319
| Path | csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail |
|---|---|
| From | v_borchert@despammed.com (Volker Borchert) |
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Wanted: List of intervals |
| Date | 17 Feb 2017 02:49:07 GMT |
| Organization | Private site at Eddersheim, Germany |
| Lines | 59 |
| Distribution | world |
| Message-ID | <o85ob3$k76$1@Gaia.teknon.de> (permalink) |
| References | <o854lm$f4d$1@Gaia.teknon.de> <o8583e$7tj$1@gioia.aioe.org> |
| X-Trace | individual.net YA2ppy/32iy+LB35M+6Y9wNJSNi2tT4U55mBSGKvZXF/Jhk6Zk |
| Cancel-Lock | sha1:Bq4pavrA49iwwDSpxM5A4Ruh39g= |
| Xref | csiph.com comp.lang.java.programmer:36319 |
Show key headers only | View raw
Arne Vajh??j wrote:
> On 2/16/2017 4:13 PM, Volker Borchert wrote:
> > Given: a file containing an unordered list of disjoint but possibly
> > adjacent [long lower, long upper) intervals.
> > Wanted: a list of such intervals, sorted by lower, with adjacent input
> > intervals concatenated
> >
> > The worst case input list size n is (current knowledge) a million.
> >
> > Currently, I just read them into an ArrayList, sort() it and finally
> > concatenate. ("Make it work _first_ before you make it work _fast_.")
> > Asymptotic time is dominated by sorting's O(n log n).
> >
> > Does anyone know of a suitable (i.e., asymptotic time O(n log n)
> > or better, but less than 2n references) data structure that merges
> > during insertion? Apache commons-collections TreeList is unordered
> > thus requires binary search at O(log^2 n) for insert, and standard
> > TreeSet seems to be expensive when looking for previous and next.
> >
> > BSD-ish license preferred, LGPL OK, commercial will be considered.
> >
> > If I can't find anything, I'll probably write a special mergesort
> > that does the concatenation during merge. Not optimal, but better
> > than nothing and easy enough.
>
> You say *long*. Does that mean that total range bytes can not be
> in memory?
I think you misunderstood, maybe I wasn't clear enough. I'll provide
a trivial example.
Given: a file reading
27 48
250 260
115 162
60 81
203 240
85 100
272 304
162 203
10 27
350 372
304 350
Wanted: an Iterable<long[2]> containing
10 48
60 81
85 100
115 240
250 260
272 373
Or: an array containing
10 48 60 81 85 100 115 240 250 260 272 373
Or: ...?
--
"I'm a doctor, not a mechanic." Dr Leonard McCoy <mccoy@ncc1701.starfleet.fed>
"I'm a mechanic, not a doctor." Volker Borchert <v_borchert@despammed.com>
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-16 21:13 +0000
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-16 17:11 -0500
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-17 02:49 +0000
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-16 22:32 -0500
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-18 07:28 +0000
Re: Wanted: List of intervals Robert Klemme <shortcutter@googlemail.com> - 2017-02-19 20:02 +0100
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-19 17:13 -0500
Re: Wanted: List of intervals Eric Sosman <esosman@comcast-dot-net.invalid> - 2017-02-19 17:18 -0500
Re: Wanted: List of intervals Robert Klemme <shortcutter@googlemail.com> - 2017-02-19 23:31 +0100
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-19 23:00 -0500
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-19 23:09 -0500
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-19 22:52 -0500
Re: Wanted: List of intervals Eric Sosman <esosman@comcast-dot-net.invalid> - 2017-02-20 07:47 -0500
Re: Wanted: List of intervals Andreas Leitgeb <avl@logic.at> - 2017-02-20 13:30 +0000
Re: Wanted: List of intervals Arne Vajhøj <arne@vajhoej.dk> - 2017-02-20 08:51 -0500
Re: Wanted: List of intervals Robert Klemme <shortcutter@googlemail.com> - 2017-02-16 23:18 +0100
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-17 02:54 +0000
Re: Wanted: List of intervals Martin Gregorie <martin@address-in-sig.invalid> - 2017-02-16 23:58 +0000
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-17 03:30 +0000
Re: Wanted: List of intervals Martin Gregorie <martin@address-in-sig.invalid> - 2017-02-17 12:10 +0000
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-18 08:06 +0000
Re: Wanted: List of intervals Martin Gregorie <martin@address-in-sig.invalid> - 2017-02-18 13:18 +0000
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-02-18 19:58 +0000
Re: Wanted: List of intervals Martin Gregorie <martin@address-in-sig.invalid> - 2017-02-18 20:45 +0000
Re: Wanted: List of intervals Eric Sosman <esosman@comcast-dot-net.invalid> - 2017-02-19 10:57 -0500
Re: Wanted: List of intervals Andreas Leitgeb <avl@logic.at> - 2017-02-19 17:36 +0000
Re: Wanted: List of intervals a.laforgia@gmail.com - 2017-02-17 03:13 -0800
Re: Wanted: List of intervals Eric Sosman <esosman@comcast-dot-net.invalid> - 2017-02-17 08:20 -0500
Re: Wanted: List of intervals Roedy Green <inquiry@mindprod.com> - 2017-03-08 01:30 -0800
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-03-09 19:32 +0000
Re: Wanted: List of intervals Andreas Leitgeb <avl@logic.at> - 2017-03-09 23:05 +0000
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-03-11 01:40 +0000
Re: Wanted: List of intervals Andreas Leitgeb <avl@logic.at> - 2017-03-11 12:39 +0000
Re: Wanted: List of intervals v_borchert@despammed.com (Volker Borchert) - 2017-03-11 18:15 +0000
Re: Wanted: List of intervals Andreas Leitgeb <avl@logic.at> - 2017-03-11 21:47 +0000
csiph-web