-
Data: 2013-09-25 07:56:12
Temat: Re: funkcja haszująca/skrótu
Od: Przemysłąw Dębski <p...@g...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Piotrne pisze:
> W dniu 2013-09-24 06:06, bartekltg pisze:
>
> > Pytacz pewnie by docenił dwa słowa, skąd wzorek;)
>
>
> Wzorek jest spisany m.in. tu:
> http://math.stackexchange.com/questions/349924/funct
ion-mapping-combinations-to-natural-numbers
>
>
> Wyjaśnić go można obrazowo na trójkącie Pascala
> ze współczynnikami dwumianowymi. Dla podanego
> przykładu (kombinacje 2 elementów z 6) znajdujemy
> liczbę C(6,2) = 15. Tyle jest różnych kombinacji.
> Jednocześnie tyle jest różnych "dróg" prowadzących
> od liczby 15 do jedynki na górze trójkąta - przyjmując,
> że poruszamy się zawsze o "piętro" w górę (do n-1),
> w lewo (do k-1) lub w prawo (do k). Każda spośród tych
> dróg reprezentuje inną kombinację: element należy
> do podzbioru, jeśli "skręciliśmy w lewo" (wybraliśmy k-1).
>
> Pozostaje więc ponumerowanie dróg (i jednocześnie kombinacji).
> Dla przykładowej 15 (= 5 + 10) przyjmujemy, że 5 początkowych
> numerów (0 do 4) pochodzi z "piątki", a 10 kolejnych numerów
> (5 do 14) z "dziesiątki". Przenosząc się o poziom wyżej:
> numery 5 do 14 pochodzą z "czwórki" (5 do 8) oraz "szóstki"
> (9 do 14). I tak dalej...
Dzięki za pomoc, algorytm działa idealnie na moich danych, choć to jak
działa nie do końca jeszcze rozumiem :) Współczynniki stablicowałem.
Uzupełniając jeszcze Twoją odpowiedź dla Wojtka, dlaczego nie liczby w
systemie 52. Tak (w sensie - bitowo)zakodowane kombinacje można łatwo
testować na okoliczność zawierania lub nie elementów przy pomocy
operatorów bitowych. Ma to znaczenie gdy podzbiór który obrabiam jest
zdefiniowany w taki sposób, że generowanie iteracyjne jedynie
prawidłowych kombinacji jest skomplikowane i raczej mało efektywne.
Przykład:
Tu muszę nadmienić, że tablica do której robiliśmy wskazania, jest tylko
przejściową do innej, posortowanej wg. takiego klucza, który gwarantuje
(poza przypadkami szczególnymi), że podzbiory które będziemy badać będą
w niej ciągłe (wszystkie wartości od indeksu a do b). Wracając o
przykładu - odniosę się do faktycznych danych. Mamy zbadać coś we
wszystkich kombinacjach par od QQxxx do AAxxx, przy czym w xxx nie może
być kilku konkretnych kart. Ponieważ mają to być pary, generując
iteracyjnie musiał bym zadbać by xxx oprócz kart których nie mogą z
założenia zawierać, nie zawierały w sobie róznych innych tworów typu np.
55x, które z jednej pary tworzą dwie pary. Natomiast jeśli wyjdę od
strony tablicy w której pary AA-QQ są w ciągłym zakresie indeksów i nie
ma wśród nich kart klasy innej niż para (tak jest posortowana tablica)
wówczas pozostaje mi zbadać tylko jawnie zadane warunki nie zawierania
konkretnych kart. Przy bitowym zakodowaniu robię to najczęściej jednym
AND, przy kodowaniu w systemie 52 muszę się gimnastykować.
Pozdrawiam
Następne wpisy z tego wątku
- 25.09.13 12:36 JDX
- 25.09.13 15:05 p...@g...pl
- 25.09.13 17:30 JDX
- 25.09.13 19:01 Ghost
Najnowsze wątki z tej grupy
- 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?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-14 Dobra zmiana
- 2024-11-14 Czy prezydent może ułaskawić od zadośćuczynienia? [A. Lepper odszkodowania]
- 2024-11-14 Gliwice => Network Systems Administrator (IT Expert) <=
- 2024-11-14 Gliwice => Administrator Systemów Sieciowych (Ekspert IT) <=
- 2024-11-13 Filtr do pompy ruskiej
- 2024-11-12 Gdzie kosz?
- 2024-11-13 elektrycznie
- 2024-11-12 Jebane kurwa, kurwy.
- 2024-11-13 karta parkingowa
- 2024-11-13 Wl/Wyl (On/Off) bialy/niebieski
- 2024-11-12 I3C
- 2024-11-13 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2024-11-13 Łódź => Senior SAP HANA Developer <=
- 2024-11-13 Zabrze => Senior PHP Symfony Developer <=
- 2024-11-13 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=