static void Main(string[] args) { const int iloscWierzcholkow = 6; Graf g = new Graf(iloscWierzcholkow); //g.DodajKrawedzNieskierowana(0, 1); //g.DodajKrawedzNieskierowana(1, 2); //g.DodajKrawedzNieskierowana(2, 3); //g.DodajKrawedzNieskierowana(1, 4); //g.DodajKrawedzNieskierowana(4, 5); //g.DodajKrawedzNieskierowana(5, 2); g.DodajKrawedzNieskierowana(0, 2); g.DodajKrawedzNieskierowana(0, 4); g.DodajKrawedzNieskierowana(1, 3); g.DodajKrawedzNieskierowana(1, 5); g.DodajKrawedzNieskierowana(2, 5); g.DodajKrawedzNieskierowana(3, 4); List <int> stopien = new List <int>(); for (int i = 0; i < iloscWierzcholkow; i++) { stopien.Add(g.Sasiedzi(i).Count); } Queue <int> kolejnosc = new Queue <int>(); while (true) { int maxIndex = stopien.IndexOf(stopien.Max()); if (stopien[maxIndex] < 0) { break; } kolejnosc.Enqueue(maxIndex); stopien[maxIndex] = -1; } var pokolorowanie = KolorujGraf(iloscWierzcholkow, g, kolejnosc); Console.ReadLine(); }