Correctness-Proof dari greedy-algorithm untuk minimum vertex cover dari pohon


14

Ada algoritma serakah untuk menemukan tutupan simpul minimum pohon yang menggunakan traversal DFS.

  1. Untuk setiap daun pohon, pilih induknya (mis. Induknya berada dalam penutup simpul minimum).
  2. Untuk setiap simpul internal:
    jika ada dari anak-anaknya yang tidak dipilih, maka pilih simpul ini.

Bagaimana saya membuktikan bahwa strategi serakah ini memberikan jawaban yang optimal? Bahwa tidak ada penutup simpul yang lebih kecil daripada yang dihasilkan algoritma di atas?


Saya tidak berpikir logika untuk langkah ke-2 benar. Jika Anda menganggap pohon degenerasi dengan 6 node turun sepenuhnya (beri label 1-6 sesuai dengan kedalamannya). Kemudian langkah pertama dari algoritma Anda akan memilih simpul 5. Langkah kedua kemudian akan mungkin memilih simpul pertama (root) dan kemudian simpul kedua (anak) ATAU simpul ketiga. Namun, ini tidak benar karena Anda hanya ingin memilih simpul 2 dan simpul 5 untuk solusi yang benar.
miguel.martin

@ miguel.martin Jika Penutup Vertex hanya berisi simpul bernomor 2 dan 5, tepi antara simpul 3 dan 4 tidak akan dibahas.
Laschet Jain

Jawaban:



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.