Quadratic time to sort in a simple case?
Dmitry Olshansky
dmitry.olsh at gmail.com
Fri Apr 19 15:26:33 PDT 2013
20-Apr-2013 02:12, Ivan Kazmenko пишет:
>>> With n = 30_000 as in the example, this takes time of the order of a
>>> second on a modern computer, which is clearly O(n^2). I am using DMD
>>> 2.062.
>>
>> Optimization flags if any?
>
> Both "-O" and no-flags give quadratic behavior.
>
I sought after
-O -inline -release
In non-release mode it tests that it's sorted on exit etc.
Anyway it's 8x times as fast with -release -inline for me but the
progression is similarly bad.
> Well, if that does not convince you the time grows faster than n-log-n,
> maybe this comparison shall (dmd -O, Core i7-2600K @3400 MHz):
>
> n T, seconds
> 15_000 0.312
> 30_000 1.076
> 60_000 3.775
> 120_000 11.247
>
> With n growing x2, the time grows x3 to x4 at each step.
--
Dmitry Olshansky
More information about the Digitalmars-d-learn
mailing list