Las Vegas je typ pravděpodobnostního algoritmu (viz také Monte Carlo Algorithms ).
Myšlenka algoritmu Las Vegas je následující. Pokud máme určitý pravděpodobnostní algoritmus , který dává správný výsledek s určitou pravděpodobností, a je možné algoritmicky zkontrolovat správnost výsledku algoritmu (řekněme pomocí algoritmu ), pak můžeme algoritmus provádět, dokud kontrola nezjistí, že výsledek je správný.
Spusťte algoritmus s výsledkem , dokud není pravdivý.Název tohoto principu byl dán jednak jako narážka na metodu Monte Carlo . Na druhou stranu tento název naráží na "metodu výher v kasinu", která je podobná procesu algoritmu - "pokud budu hrát znovu a znovu, určitě jednou vyhraju."
Je třeba poznamenat, že algoritmus Las Vegas zaručuje správný výsledek. Algoritmus běží v konečném, ale nedeterministickém čase. Můžete zadat pouze pravděpodobnost získání výsledku v daném čase.
Příkladem algoritmu souvisejícího s třídou Las Vegas je třídicí algoritmus Bogosort : data, která mají být seřazena, jsou náhodně zamíchána a poté je zkontrolováno, zda jsou ve správném pořadí. V případě poruchy se míchání mnohokrát opakuje, dokud není dosaženo požadovaného pořadí.
Nechť je algoritmus Las Vegas s očekávanou časovou složitostí , kde je délka vstupu. Pokud se po krocích ( ) zastavíme , dostaneme algoritmus Monte Carlo s pravděpodobností chyby . K prokázání věty uvažujme jako vstup délky a - náhodnou veličinu popisující časovou složitost . Pak matematické očekávání a podle Markovovy nerovnosti : .