Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #27552
| From | bartekltg <bartekltg@gmail.com> |
|---|---|
| Newsgroups | pl.comp.programming |
| Subject | Re: Tablica int i usuwanie duplikatów |
| Date | 2015-09-18 21:36 +0200 |
| Organization | ATMAN - ATM S.A. |
| Message-ID | <mthp48$epf$1@node2.news.atman.pl> (permalink) |
| References | (17 earlier) <mtfe8g$7cu$1@node2.news.atman.pl> <a2eb3582-5ca2-447b-b90c-43136810bb88@googlegroups.com> <1ozh9732tw6vb.1k80ivwsjct79.dlg@40tude.net> <mthm8f$p6g$1@node1.news.atman.pl> <13goui39dxzb2.1kw5grc7j0y14.dlg@40tude.net> |
On 18.09.2015 21:01, szemrany wrote: > On Fri, 18 Sep 2015 20:47:42 +0200, bartekltg wrote: > >>>> Właśnie nie pamiętam ile to było. Oryginalny pytacz będzie >>>> testował, to pewnie nam powie jakie miał benchmarki :) Ja >>>> strzelam że pomiędzy 500-1000. >>> >>> Pytacz nie będzie chyba aż tak złożonych testów robił. Poza tym pytacz >>> wszystkich opisanych algorytmów nie kuma >> >> To trzeba pytać. Milczy, znaczy rozumie. >> ;-) >> >> Zwłaszcza po tym, jak marudziłeś, że za proste rozwiązania >> dostałeś;-) > > Nie proste tylko niepełnosprytne ;-) > A potem się zaczęło ...zbyt sprytnie :-) > > Gdy pytałem o algorytmy myślałem o czymś bardziej opartym o matematykę, ale > jak się okazuje akurat ten problem jest mało matematyczny. > >>> lub nie może zrobić, bo w Delphi >>> nie ma niektórych potrzebnych językowych patentów, jak np. sety. Tzn. są >>> sety, ale ograniczone do 256 elementów. >> >> Przez set mieliśmy na myśli kontener (u nas trzymający inty) oparty na >> zrównoważonych drzewach binarnych. Nie ma to nic wspolengo "set of" >> z (delphi) pascala. Unordered_set to kontener (zawierający u nas inty) >> który trzyma je w tablicy hashującej. > > Tak, tylko, że Delphi miało inne założenia produkcyjne i nie ma milionów Założenia miało te same. A nawet bardziej nastawione na biblioteki, bo było to tzw RAD. Miałeś szbyko budować aplikacje z klocków, nie pisać własny standardowy kontener. > nie ma milionów > kontenerów jak C++. Muszę część rzeczy wydłubać sam. Po prostu nie wierzę. Tak, pascal jest mentalnie związany z uczeniem programowania, i każdy nowy programista koniecnzie musi pisać własnego qsorta i drzewo AVL, ale to szybko przechodzi, a jeśli język jest więcej niż parę osób używany komenrcyjnie (a Delphi jak mówisz, nadal jest, a jakis czas temu było bardzo poważnie używane), na pewno biblioteki są. Zresztą, sam w poprzednim poście znalazłeś TDictionary, odpowiednik mapy, i to w wersja która wygląda na szablonową. Pewnie obok jest i zwykły zbiór, i tablica hashuhjąca. TDictionary wystarczy. >> Nie mam pojęćia, jak to się w Pascalu nazywa. (Googlem znalazłem tylko >> jakieś paskudzctwa bawięce się wskaźnikami do obiektów, ze świecą >> szukać informacji, co siedzi pod spodem i jaka jest złożoność operacji) >> Pewnie Tcośtamcośtam. :) >> Skoro jest to język nadal używany, na pewno gdzieś jest. > > Nie chcę używać dziesiątek obcych bibliotek, bo to co teraz robię pakuję do > swojego frejmworka do użycia także w przyszłości, więc nie chcę mieć zbyt > wielu ogonów. Przejdź na ciemną stronę. C++, java, nawet python. Mniej czasu poświeceisz na nowy język niż na pokonywanie takich problemów. ;] > >>> Zrobiłem na razie klasyczny algorytm z dwoma pętlami i porównaniem (z tym, >>> że zrobiłem dwie różne wersje) oraz teraz konwertuje algorytm, który podał >>> AK napisany w C. Na razie utknąłem na składni niektórych poleceń, czekam w >>> innym wątku aż AK mi odpowie. >>> Jeszcze zrobię werję z Hash Table, która jest zaimplementowana w Delphiowym >>> TDictionary (hash jest oparty o algorytm Jenkinsa). >>> I to chyba wszystko. >> >> Bez sensu. Tablicę hashującą robisz na tablicy. >> TDictionary to odpowiednik std::map, obiekt bardzo podobny do zbioru. >> Mając TDictionary nie musisz nic na nim budować, korzystasz z niego >> bezpośrednio, trzymając informację, int->ilosć wystyępień. >> Szczegoły już padły. > > Jak już pisałem wcześniej piszę generyczny moduł, który operuje na > tablicach TArray<T> i potrafi z nich: > - usuwać dowolne elementy > - usuwać duplikaty > - porównywać dwie tablice > - itd. > > Stąd potrzebuję algorytmów niskopoziomowych, które sobie w tymże module > zaimplementuję. Jeśli okaże się, że użycie TDictionary da jakiś zysk na Przecież ni o tym pisałem. Wewnętrz algorytmu wyznaczajacego duplikaty używasz dołego TDictionary tak, jak w praktycznie wszystkich opisanych tu sposobach. > dużych tablicach względem algorytmu naiwnego z pętlami to tej wersji też > będę używał. Da. A jeszcze szybsze byłoby zrobienie kopii i sortowanie ;-) pzdr bartekltg
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar
Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-14 21:56 +0200
Re: Tablica int i usuwanie duplikatów Adam Klobukowski <adamklobukowski@gmail.com> - 2015-09-14 13:50 -0700
Re: Tablica int i usuwanie duplikatów witek <witek7205@gazeta.pl.invalid> - 2015-09-14 20:23 -0500
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-15 04:10 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-15 04:10 +0200
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-15 09:32 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-15 10:50 +0200
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-15 12:01 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-15 14:53 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-15 14:16 +0200
Re: Tablica int i usuwanie duplikatów slawek <fake@fakeemail.com> - 2015-09-16 07:21 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 07:38 +0200
Re: Tablica int i usuwanie duplikatów slawek <fake@fakeemail.com> - 2015-09-16 10:57 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 11:34 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-16 03:31 -0700
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 12:52 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-16 05:03 -0700
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 16:49 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-16 17:31 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 17:58 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-16 18:25 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 18:28 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-16 10:41 -0700
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-16 19:57 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 22:46 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-16 23:27 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-17 00:23 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-17 05:37 -0700
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-18 00:18 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-18 09:07 -0700
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-18 18:20 +0200
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-18 20:22 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-18 20:47 +0200
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-18 21:01 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-18 21:36 +0200
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-18 22:50 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 03:08 +0200
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-19 11:34 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 20:52 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-19 04:35 -0700
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-19 04:57 -0700
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-19 14:43 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-19 05:50 -0700
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-19 15:08 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-19 06:23 -0700
Re: Tablica int i usuwanie duplikatów szemrany <szemrany@offline.off> - 2015-09-19 15:44 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 18:20 +0200
Re: Tablica int i usuwanie duplikatów Tomasz Kaczanowski <kaczus@dowyciecia_poczta.onet.pl> - 2015-09-21 08:09 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 18:13 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 18:10 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-19 09:58 -0700
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 20:44 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-22 04:43 -0700
Re: Tablica int i usuwanie duplikatów slawek <fake@fakeemail.com> - 2015-09-17 08:12 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-17 15:14 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-17 16:37 +0200
Re: Tablica int i usuwanie duplikatów slawek <fake@fakeemail.com> - 2015-09-18 07:22 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-18 15:15 +0200
Re: Tablica int i usuwanie duplikatów slawek <fake@fakeemail.com> - 2015-09-19 20:45 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-19 21:01 +0200
Re: Tablica int i usuwanie duplikatów slawek <fake@fakeemail.com> - 2015-09-20 16:27 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-20 17:14 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-16 11:05 +0200
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 11:40 +0200
Re: Tablica int i usuwanie duplikatów "AK" <nobody@nowhere.com> - 2015-09-16 12:05 +0200
Re: Tablica int i usuwanie duplikatów Sebastian Biały <heby@poczta.onet.pl> - 2015-09-16 19:11 +0200
Re: Tablica int i usuwanie duplikatów "M.M." <mmarszik@gmail.com> - 2015-09-16 10:46 -0700
Re: Tablica int i usuwanie duplikatów bartekltg <bartekltg@gmail.com> - 2015-09-16 19:55 +0200
csiph-web