Bir ağacın minimum tepe örtüsü için açgözlü bir algoritmanın doğruluğu-kanıtı


14

DFS çapraz geçişini kullanan bir ağacın minimum tepe kapağını bulmak için açgözlü bir algoritma vardır.

  1. Ağacın her yaprağı için, üst öğesini seçin (yani, üst öğesi minimum tepe örtüsündedir).
  2. Her iç düğüm için: alt
    öğelerinden herhangi biri seçili değilse, bu düğümü seçin.

Bu açgözlü stratejinin en uygun cevabı verdiğini nasıl kanıtlayabilirim? Yukarıdaki algoritmanın ürettiğinden daha küçük bir köşe kapağı olmadığı mı?


2. adımın mantığının doğru olduğunu düşünmüyorum. Dejenere bir ağacı 6 düğümün tamamen aşağıya ineceğini düşünüyorsanız (derinliklerine karşılık gelen 1-6 etiketleyin). Daha sonra algoritmanızın ilk adımı 5. düğümü seçecektir. İkinci adım muhtemelen ilk düğümü (kök) ve sonra ikinci düğümü (alt) VEYA üçüncü düğümü seçecektir. Ancak, doğru bir çözüm için yalnızca düğüm 2 ve düğüm 5'i seçmek istediğiniz için bu yanlıştır.
miguel.martin

@ miguel.martin Vertex Kapağı yalnızca 2 ve 5 numaralı köşeler içeriyorsa, düğüm 3 ve 4 arasındaki kenar kapatılmaz.
Laschet Jain

Yanıtlar:


11

Biz ilk aşağıdakileri dikkat edin: Orada optimal örtü ve hiçbir yaprak içindedir . Herhangi optimum kapak beri bu durum geçerlidir sen tüm yaprakları yerini alabilir ebeveynleri ile ve daha büyük değildir, bir tepe kapağı almak .CCXXX

Şimdi yaprak içermeyen en uygun kapağını alın . Hiçbir izin seçilmediğinden, yaprakların tüm ebeveynleri . Başka bir deyişle, , yaprakların ve ebeveynlerinin açgözlü örtüsüne denk gelir. Sonra, zaten kaplanmış olan tüm kenarları çıkarırız. Şimdi aynı argümanı tekrar uygulayabiliriz: Geri kalan ağaçta, yaprak seçilmesine gerek yoktur, ancak ebeveynlerinin seçilmesi gerekir. Açgözlü algoritmanın yaptığı da tam olarak budur. (Bir önceki adımda tüm çocukları seçilirse bir köşe yaprağı haline gelir.) Bu argümanı tekrarlayarak tam bir köşe kapağı belirledik.CCC


4

İpucu: Kapaktaki her bir tepe noktasını seçilmemiş bir çocukla eşleştirerek tepe kapağınızla aynı boyutta bir eşleştirme oluşturun. Kanıtlamakeşleşen ve tepe kapağı . Tepe kapağının minimum ve eşleşmenin maksimum olduğu sonucuna varın.|M||C|MC

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.