eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingsortowanieRe: sortowanie
  • Received: by 10.52.29.174 with SMTP id l14mr1485604vdh.13.1350280141565; Sun, 14 Oct
    2012 22:49:01 -0700 (PDT)
    Received: by 10.52.29.174 with SMTP id l14mr1485604vdh.13.1350280141565; Sun, 14 Oct
    2012 22:49:01 -0700 (PDT)
    Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!news.supermedia.pl!plix.pl!newsfeed2.plix.pl!feed.xsnews.nl!border-1.a
    ms.xsnews.nl!xlned.com!feeder7.xlned.com!news2.euro.net!209.197.12.246.MISMATCH
    !nx02.iad01.newshosting.com!newshosting.com!69.16.185.11.MISMATCH!npeer01.iad.h
    ighwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!l8no521
    69295qao.0!news-out.google.com!r17ni24752519qap.0!nntp.google.com!l8no52169281q
    ao.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Sun, 14 Oct 2012 22:49:01 -0700 (PDT)
    In-Reply-To: <k5ffr0$v8t$1@node2.news.atman.pl>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=31.61.28.197;
    posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
    NNTP-Posting-Host: 31.61.28.197
    References: <k59gbj$be7$1@node2.news.atman.pl>
    <b...@g...com>
    <c...@g...com>
    <k5cs8t$bkr$1@node1.news.atman.pl>
    <7...@g...com>
    <k5e2d2$jgh$1@node2.news.atman.pl>
    <a...@g...com>
    <k5eoaa$5rd$2@node1.news.atman.pl>
    <c...@g...com>
    <k5epck$9mm$1@node2.news.atman.pl>
    <0...@g...com>
    <k5equl$b7l$1@node2.news.atman.pl>
    <9...@g...com>
    <k5eule$cj3$1@node1.news.atman.pl> <k5f6nr$mov$1@node2.news.atman.pl>
    <3...@g...com>
    <d...@g...com>
    <k5fap5$qo5$1@node2.news.atman.pl>
    <6...@g...com>
    <k5fcnc$rg4$1@node1.news.atman.pl>
    <f...@g...com>
    <k5ffr0$v8t$1@node2.news.atman.pl>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <a...@g...com>
    Subject: Re: sortowanie
    From: kenobi <p...@g...com>
    Injection-Date: Mon, 15 Oct 2012 05:49:01 +0000
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: quoted-printable
    X-Received-Bytes: 4228
    Xref: news-archive.icm.edu.pl pl.comp.programming:199928
    [ ukryj nagłówki ]

    W dniu poniedziałek, 15 października 2012 00:54:24 UTC+2 użytkownik bartekltg
    napisał:
    > W dniu 2012-10-15 00:43, kenobi pisze:
    >
    >
    >
    > > wyniki moich pomiarow w stosunku do qsorta z clib
    >
    > >
    >
    > > //tab_size qsort komb-hist
    >
    >
    >
    > Nie napisałeś, czym jest komb-hist.
    > Jakiś kod, skoro już się bawimy.
    >
    >
    komb-hist czyli kombinowany kasperski, (kasperki
    kombinowany 2-pozycyjnie)

    ten sam kod

    void sortowanie_histogramowe_kombinowane_2pozycyjnie_test
    ()
    {


    for (int i=0; i<histogram_size; i++) histogram[i] = 0;
    for (int i=0; i<tab_size; i++) histogram[ tab[i] & 0xffff ] ++;
    for (int i=1; i<histogram_size; i++) histogram[i] += histogram[i-1];

    for (int i=0; i<tab_size; i++) temp[ --histogram[ tab[i] & 0xffff ] ] =
    tab[i];

    for (int i=0; i<histogram_size; i++) histogram[i]=0;
    for (int i=0; i<tab_size; i++) histogram[ (temp[i]>>shift) ]++;
    for (int i=1; i<histogram_size; i++) histogram[i]+=histogram[i-1];

    for (int i=tab_size-1; i>=0; i--) tab[--histogram[ temp[i]>>shift ]] =
    temp[i];


    }


    ew probowalem uzyc dwu histogramow i zliczac w jednej petli

    for (int i=0; i<tab_size; i++)
    {
    int w = tab[i];
    histogram[ w & 0xffff ] ++;
    histogram2[ w >> 16 ] ++;
    }

    moze bylo drobine (1/40) szybsze (pojedyncze wyniki oscyluja
    a nie mierzylem w petli)

    a jak z wielokrotnym sortowaniem - np 8-pozycyjnym
    dla stringow char[32] ? nie byloby to tez szybsze
    dla 'zageszczonych' stringow ?


    >
    > >
    >
    > > //100 20 u 800 u
    > > //1 tys 250 u 1000 u
    > > //10 tys 3.3 m 1.2 m
    > > //100 tys 40 m 20 m
    > > //1 mln 600 m 350 m
    > > //10 mln 6.2 s 3.9 s
    >
    > >
    >
    > > niecale 2 razy szybsze :/ no ale to jest
    >
    >
    >
    > Jakby było uniwersalne (czyli wersja "kombinowana")
    >
    > i 20 razy szybsze, byłoby w bibliotekach.
    >
    >
    >
    > pzdr
    >
    > bartekltg

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: