Bazı grafik algoritmalarına gidiyorum (bu ev ödevi değil; sadece algoritmalara ve veri yapılarına tarama yapıyorum) ve bir sorum var.Hatasız bir grafikte bağlanan bileşenlerin sayısı
var graph = {
9: [19, 26],
13: [19, 5],
17: [],
26: [11, 18],
18: [9],
19: [],
23: [24],
24: [],
11: [],
18: []
};
grafik kabaca şöyledir:
kaç bağlı bileşenler bu grafikte I aşağıdaki yönsüz grafiği var varsayalım? Sadece grafiğe bakarak, 3 bileşen var gibi görünüyor. Ancak, algoritmayı gerçekte uygularsam (her bir köşe noktası üzerinde yineleme yapar ve bu köşeyi başlangıç noktasını kullanarak bir bfs yaparsanız, o köşe noktası keşfedilmez. Ayrıca, bfs, keşfedildiği gibi karşılaştığı herhangi bir köşe noktasını işaretler).
9
ile başlıyorum, aşağıdaki düğümleri keşfederek sona erer: [19, 26, 11, 18]
. Ancak, 13
, 19
'un bitişik listesinde bulunmadığından keşfedilmemiştir. Ancak, 19
, 13
'un bitişik listesinde yer almaktadır. Bu yüzden fazladan bir bileşenle sonuçlanıyorum.
Bu doğru mu? Aslında 4 ayrı bileşen var mı ve eğer öyleyse, bağlı-bileşen anlayışım yanlış mı?
Bu soruya verilen yanıtın ne kadar önemli olduğunu merak ediyorum ... oldukça meşru. –
Grafik özellikle diğer sorunlara pek uygun değil –