Algorytm Fleury’ego – algorytm pozwalający na odszukanie cyklu Eulera w grafie eulerowskim.
Poszukiwanie cyklu Eulera w grafie Dany jest graf G taki że G jest grafem eulerowskim. Aby znaleźć cykl Eulera wiodący od określonego wierzchołka v, można przemierzać ścieżkę cykliczną, usuwając napotkane krawędzie i gromadząc na stosie napotkane wierzchołki, dzięki czemu uzyskuje się możliwość: Zawrócenia po ścieżce i wydrukowania ich krawędzi Sprawdzenia, czy dla każdego wierzchołka istnieją ścieżki prowadzące z innych stron (które można połączyć w jedną ścieżkę).
Algorytm wymaga stworzenia kopii lokalnej grafu, aby móc z niej usunąć poszukiwaną ścieżkę. Dlatego też klasa definiująca abstrakcyjny typ danych graf powinna posiadać konstruktor kopiujący oraz tworzyć kompletną i odseparowaną kopię grafu. W implementacji algorytmu przyjęto, że tak jest. W przeciwnym wypadku po zakończeniu działania algorytmu należałoby jeszcze raz przemierzyć ścieżkę Eulera, ponownie dodając do grafu wszystkie jej krawędzie.