eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingTablica int i usuwanie duplikatówRe: Tablica int i usuwanie duplikatów
  • Data: 2015-09-15 14:16:10
    Temat: Re: Tablica int i usuwanie duplikatów
    Od: bartekltg <b...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 15.09.2015 09:32, szemrany wrote:
    > On Tue, 15 Sep 2015 04:10:29 +0200, bartekltg wrote:
    >
    >>> Mam tablicę intów i potrzebuję usunąć duplikaty. Chciałbym uniknąć
    >>> sortowania.
    >>> Jak to zrobić wydajnie? Jakiś algorytm sprytny?
    >>
    >> Wpakuj do tablicy hashującej, takiej bez powtórzeń
    >> (unordered_set<> w cpp). [To, jak się zastanowić,
    >> bardzo podobne rozwiązanie do proponowanego przez Adama]
    >>
    >> Może być nawet szybsze niż sortowanie (oczekiwaną złożoność
    >> ma liniową), ale za to pamięci zeżre trochę.
    >
    > I naprawdę algorytmika niczego lepszego nie wymyśliła?

    A co byś chciał lepszego?

    >
    >> Czemu nie chcesz sortowania?
    >
    > W zasadzie w przypadku jaki tu i teraz potrzebuję sortowanie jest
    > dopuszczalne, ale chciałem to zrobić generycznie i mieć do wykorzystania w

    Sortowanie jest bardzo generyczne.

    > innych przypadkach, a nie zawsze zmiana kolejności elementów będzie
    > dopuszczalna.

    Tak podejrzewałem, że nie chcesz zamieniać kolejności,
    ale tego NIE NAPISAŁEŚ ;p

    Przechodząc tablicę trzymaj kontener (drzewo zrównoważone - set,
    lub tablice hashującą - unordered set) z elementami już
    przetworzonymi, obrabiasz element z tablicy jeśli nie ma go
    w pomocniczym kontenerze. Po obrobieniu wsadzasz go tam.

    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: