eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingTablica int i usuwanie duplikatówRe: Tablica int i usuwanie duplikatów
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!.POSTED!not-for-mail
    From: bartekltg <b...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Re: Tablica int i usuwanie duplikatów
    Date: Fri, 18 Sep 2015 18:20:48 +0200
    Organization: ATMAN - ATM S.A.
    Lines: 41
    Message-ID: <mthdl0$gkg$1@node1.news.atman.pl>
    References: <q1dqtorkbx55$.vtwhsmj03gkt$.dlg@40tude.net>
    <mt7umm$ulv$1@node1.news.atman.pl>
    <3aivb8qrco1q$.13cffg23pn4pg.dlg@40tude.net>
    <a...@n...v.pl>
    <mtav82$r76$1@node2.news.atman.pl>
    <a...@n...v.pl>
    <mtbd2l$9d5$1@node2.news.atman.pl>
    <5...@g...com>
    <mtbvi8$1ro$1@node1.news.atman.pl> <mtc22e$4hh$1@node1.news.atman.pl>
    <mtc3ip$vok$1@node2.news.atman.pl> <mtc56n$7m6$1@node1.news.atman.pl>
    <b...@g...com>
    <mtcaik$d1l$1@node1.news.atman.pl> <mtckeb$nhk$1@node1.news.atman.pl>
    <mtcmsn$j1k$1@node2.news.atman.pl> <mtcq5e$tdl$1@node1.news.atman.pl>
    <1...@g...com>
    <mtfe8g$7cu$1@node2.news.atman.pl>
    <a...@g...com>
    NNTP-Posting-Host: 89-73-81-145.dynamic.chello.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node1.news.atman.pl 1442593248 17040 89.73.81.145 (18 Sep 2015 16:20:48 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Fri, 18 Sep 2015 16:20:48 +0000 (UTC)
    User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101
    Thunderbird/38.2.0
    In-Reply-To: <a...@g...com>
    Xref: news-archive.icm.edu.pl pl.comp.programming:208349
    [ ukryj nagłówki ]

    On 18.09.2015 18:07, M.M. wrote:
    > On Friday, September 18, 2015 at 12:18:57 AM UTC+2, bartekltg wrote:

    >>> bool exists( int t[] , int N, int v ) {
    >>> for( i=0 ; i<N ; i++ )
    >>> if( t[i] == v )
    >>> return true;
    >>> return false;
    >>> }
    >>>
    >>> int uniq( int t[] , int N ) {
    >>> for( i=j=0 ; i<N ; i++ ) {
    >>> if( ! exist( t , j , t[i] ) )
    >>> t[j++] = t[i];
    >>> }
    >>> return j;
    >>> }
    >>>
    >>> Dla N=100 mamy około 2500 operacji. Przy N*LogN mamy
    >>> tylko 600, ale implementacja algorytmu kwadratowego
    >>> jest zabójczo wydajna.
    >>
    >> Pewnie jak przy sortowaniu. Tam granica to kilkadziesiąt
    >> elementów.
    >> Z tablicą hashującą jeszcze mniejsza. Kilka?
    > Właśnie nie pamiętam ile to było.

    std::sort w gcc przełącza przerywa rekunrencję qsorta
    na rzecz sortowania przez wstawianie dla podtablic
    mniejszych niż 16 elementów.

    > Oryginalny pytacz będzie
    > testował, to pewnie nam powie jakie miał benchmarki :) Ja
    > strzelam że pomiędzy 500-1000.

    Na pewno nie aż tyle.

    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: