algorytm.org Algorithms Algorytmy grafowe Cykl Eulera  
Home AlgorithmsData structuresAlgorithmics turorialPractiseDesign patternsIT Law SitemapPortal historyContributors ForumToolsWrite an articleSearch 

Cykl Eulera
User Rating: / 9
PoorBest 
Written by Tomasz Lubiński   
Tuesday, 09 August 2005 21:35
There are no translations available.

Cykl Eulera, to taki cykl w grafie, który zawiera każdą krawędź grafu dokładnie raz. Warunkiem istnienia cyklu są:
  • spójność grafu,
  • dla grafu skierowanego należy sprawdzić czy do każdego wierzchołka wchodzi tyle samo krawędzi co wychodzi
  • dla grafu nieskierowanego z każdego wierzchołka musi wychodzić parzysta liczba krawędzi.
Szukanie cyklu:
Zaczynamy od dowolnego wierzchołka (w naszym przypadku będzie to ten z najmniejszym indeksem), dodajemy ten wierzchołek na stos i idziemy do następnego, osiągalnego z niego wierzchołka z najmniejszym indeksem, a łącząca go z nim drogę usuwamy (rys.1), dodajemy ten wierzchołek na stos i idziemy do następnego, osiągalnego wierzchołka z najmniejszym indeksem, a łączącą go z nim drogę usuwamy (rys.2), itd...
Jeżeli nie możemy już nigdzie pójść pobieramy element ze stosu (będzie on kolejnym w cyklu) i teraz z ostatniego wierzchołka na stosie idziemy dalej (rys. 4). Czynność powtarzamy tak długo jak długo mamy jakieś wierzchołki na stosie Oto przykłądowy graf
Image
Przebieg algorytmu:
Image Image
Stos: a,b
Cykl:
Stos: a,b,c
Cykl:
Image Image
Stos: a,b,c,a
Cykl:
Stos: a,b,d
Cykl: a,c
Image  
Stos: a,b,d,e,b
Cykl: a,c
 
Teraz już nigdzie nie możemy pójść więc zdejmujemy kolejno wierzchołki ze stosu i dodajemy je do cyklu. Końcowy wynik tych operacji to cykl: a,c,b,e,d,b,a.


.

Author Progam language Comment Download Rate
Tomasz Lubiński Delphi/Pascal Borland Delphi 5
Implementation in Delphi/Pascal
/ 1
 
Add your implementation for this algorithm
  • Login first
File:
Progam language:
Comment:
  To be able to add your implementation, login first



Last Updated on Thursday, 27 May 2010 18:45
 

Add comment







Danation
Donate us


RSS Channels
Articles
Implementations
Comments
Forum


Bookmarks








Poll
Czy znalazłeś na stronach www.algorytm.org to czego szukałeś?
 

www.algorytm.org (c) 2000-2010