-
Data: 2013-03-28 12:13:42
Temat: Re: zadanie z netu
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu czwartek, 28 marca 2013 11:53:31 UTC+1 użytkownik firr kenobi napisał:
> nigdy nie uzywalem hashowania ani nawet
> o tym nie czytalem ;o (nigdy nie bylo
> mi potrzebne)
> prosta kwestia: o ile wstawiac te wyrazy do drzewa
> to jego 'posortowanie'/upozadkowanie jest
> potrzebne bo przeciez chodzi o to by szybko znalezc czy nie ma w
> nim juz tego elementu ,i
> jak jest to zrobic ++ na tym wyrazie
Trzeba pracowac na parach
struct {
char *nazwa;
int czestosc;
}
Algorytm wstawiania do drzewka automatycznie sortuje po nazwie,
nie trzeba nic sortowac. Na koniec trzeba przejrzec wszystkie
wyrazy i 10 najczestszych zapamietac w kolejce priorytetowej.
Mozna tez od razu przechowywac i w kolejcie i w drzewie, wtedy
na koniec nie bedzie potrzeby przegladania wszystkiego - nie
wiem co szybsze.
> moje pytanie jest czy wstawianie do tego
> drzewa (?) hashy jest szybsze i dlaczego
Dokladna analiza szybkosci nie jest taka prosta. Do tego
celu trzeba znac sredni koszt kazdej operacji i prawdopodobienstwo
ze do danej operacji dojdzie. W drzewku mamy operacje:
a1) wyszukiwaie
b1) wstawianie
c1) rownowazenie
W hash-table tez mamy:
a2) wyszukiwanie
b2) wstawianie
c2) zwiekszanie rozmiaru hash-table.
P to funkcja prawdopodobienstwa, K to funkcja kosztu. Trzeba miec
dane do takich wzorow:
drzwko = P(a1)*K(a1) + P(b1)*K(b1) + P(c1)*K(c1)
hash-table = P(a2)*K(a2) + P(b2)*K(b2) + P(c2)*K(c2)
Dla kazdej implementacji te dane sa inne, dla kazdego rozmiaru
danych tez sa inne, bo dane inaczej sie cash-uja.
Pozdrawiam
Następne wpisy z tego wątku
- 28.03.13 12:59 firr kenobi
- 28.03.13 14:24 M.M.
- 28.03.13 15:29 Michoo
- 28.03.13 15:55 bartekltg
- 28.03.13 16:39 bartekltg
- 28.03.13 16:42 bartekltg
- 28.03.13 16:58 M.M.
- 28.03.13 17:15 bartekltg
- 28.03.13 17:33 firr
- 28.03.13 19:20 M.M.
- 28.03.13 19:27 M.M.
- 28.03.13 19:57 bartekltg
- 28.03.13 20:14 bartekltg
- 28.03.13 20:18 M.M.
- 28.03.13 20:21 bartekltg
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
Najnowsze wątki
- 2025-04-05 Wyrok dożywocia dla Polki
- 2025-04-04 Prezydium Sejmu Tuskiego orzekło: Poseł KO mecenas Roman Giertych NIE jest mordercą (w żadnym sensie tego słowa?)
- 2025-04-04 Reset komóry
- 2025-04-04 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-04-04 Zielonka => Key Account Manager IT <=
- 2025-04-04 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2025-04-04 Warszawa => Mid/Senior IT Recruiter <=
- 2025-04-04 Białystok => NMS System Administrator <=
- 2025-04-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-04-04 Warszawa => Generative AI Engineer <=
- 2025-04-04 Warszawa => Gen AI Engineer <=
- 2025-04-04 Warszawa => Senior Programmer C <=
- 2025-04-04 Jak odróżnić myjki wibrujące od ultradźwiękowych.
- 2025-04-03 Ledy na wyłączniku czasowym błyskają
- 2025-04-03 Mapy w android-auto