Sortowanie typu: kamień, papier, nożyce - teoria

0

Jak patrzeć na porównanie w "trójkącie" kamień, papier, nożyce z punktu widzenia algorytmiki?

Ktoś to analizował teoretycznie?
Da się czegoś takie wymyślić ogólniejszą abstrakcję?
To jakiś cykliczny graf skierowany, ale co z tego wynika?

Da się w C++/ Javie / C# napisać jako enum, i do tego prawidłowy w sensie reguł gry komparator?

5

https://en.m.wikipedia.org/wiki/Cyclic_order

Da się w C++/ Javie / C# napisać jako enum, i do tego prawidłowy w sensie reguł gry komparator?

Tak. Nie.

0

Ciekawe zagadnienie ;) zgodnie z linkiem podanym przez @jarekr000000 nie da się po prostu wziąć i porównać dwóch elementów cyklu. Weźmy takie dni tygodnia i rozwińmy cykl (można to zrobić nieskończenie wiele razy): [Pon, Wt, Sr, …, Ndz, Pon, Wt, …, Ndz]. Biorąc wtorek i środę nie wiadomo, który element jest mniejszy (bo nie wiadomo z którego tygodnia jest wtorek). Brakuje punktu odniesienia jednoznacznie określającego porządek (albo trzeba „rozerwać” cykl i arbitralnie powiedzieć, że Pon < Wt < … < Ndz). Tak to rozumiem ;)

0

@Charles_Ray:
@jarekr000000:

Mam jakąś ideę na "generyczny komparator", zamierzam go tu szerzej podać jak znajdę dłuższą chwilkę.

Ale zarazem odkryłem, że "ekosystem" z trzema wartościami jest szczególnie dogodny, to przedszkole, miodzio.
Z czterema jak przyjdzie porównać "przeciwległe" w kwadracie, wynik jest nierozstrzygnięty, ewidentna wada systemu.

Jak będę miał świeższy łeb przemyślę, czy to cecha parzystych/nieparzystych systemów, czy po prostu liczności.
Technika zna projekty, ze nieparzysta ilość jest preferowana/jedyna możliwa, np lotniczy silnik gwiazdowy
.

2

Masz zbiór i relację, która definiuje porządek (liniowy, częściowy, zupełny, ..). W ogólności masz coś takiego jak "teoria porządku", która zajmuje się tego typu rozkminkami.

1 użytkowników online, w tym zalogowanych: 0, gości: 1