ความถูกต้อง - พิสูจน์ความโลภ - อัลกอริธึมสำหรับจุดสุดยอดขั้นต่ำของต้นไม้


14

มีอัลกอริทึมโลภสำหรับการค้นหาจุดสุดยอดขั้นต่ำของต้นไม้ซึ่งใช้ DFS traversal

  1. สำหรับแต่ละใบไม้ของต้นไม้ให้เลือกพาเรนต์ของมัน (เช่นพาเรนต์อยู่ในฝาครอบจุดต่ำสุด)
  2. สำหรับแต่ละโหนดภายใน:
    หากไม่มีโหนดย่อยใด ๆ ให้เลือกโหนดนี้

ฉันจะพิสูจน์ได้อย่างไรว่ากลยุทธ์โลภนี้ให้คำตอบที่ดีที่สุด? มีจุดยอดที่เล็กกว่าขนาดที่อัลกอริธึมข้างต้นสร้างขึ้นหรือไม่?


ฉันไม่คิดว่าตรรกะสำหรับขั้นตอนที่ 2 นั้นถูกต้อง หากคุณพิจารณาต้นไม้ที่เสื่อมโทรมโดยมี 6 โหนดที่จะลงไปจนสุด (ติดกับพวกเขา 1-6 ที่สอดคล้องกับความลึก) จากนั้นขั้นตอนแรกของอัลกอริทึมของคุณจะเลือกโหนด 5 ขั้นตอนที่สองอาจเป็นไปได้ที่จะเลือกโหนดแรก (รูท) จากนั้นก็จะเลือกโหนดที่สอง (ลูก) หรือโหนดที่สาม อย่างไรก็ตามสิ่งนี้ไม่ถูกต้องเนื่องจากคุณต้องการเลือกโหนด 2 และโหนด 5 เท่านั้นสำหรับโซลูชันที่ถูกต้อง
miguel.martin

@ miguel.martin หาก Vertex Cover มีแค่จุดยอดที่มีหมายเลข 2 และ 5 ขอบระหว่างโหนด 3 และ 4 จะไม่ถูกครอบคลุม
Laschet Jain

คำตอบ:


11

ครั้งแรกที่เราสังเกตดังต่อไปนี้: มีฝาครอบที่ดีที่สุดคือและไม่มีใบอยู่ในCนี่คือความจริงตั้งแต่ในฝาครอบที่ดีที่สุดคุณสามารถแทนที่ทุกใบในกับพ่อแม่ของพวกเขาและคุณจะได้รับฝาครอบจุดสุดยอดซึ่งไม่ได้มีขนาดใหญ่กว่าXC X X XCCXXX

ตอนนี้ใช้ Cover ที่ดีที่สุดที่ไม่มีใบไม้ เนื่องจากไม่มีการลาเลือกผู้ปกครองทั้งหมดของใบจะต้องอยู่ในCในคำอื่น ๆเกิดขึ้นพร้อมกับใบปะหน้าโลภบนใบและพ่อแม่ของพวกเขา ต่อไปเรานำขอบทั้งหมดที่ได้รับการครอบคลุมแล้ว ตอนนี้เราสามารถใช้อาร์กิวเมนต์เดียวกันอีกครั้ง: ในต้นไม้ที่เหลือไม่จำเป็นต้องเลือกใบไม้ แต่ต้องเลือกผู้ปกครอง และนี่คือสิ่งที่อัลกอริทึมโลภต้องการ (จุดสุดยอดจะกลายเป็นใบไม้ถ้าเด็กทุกคนได้รับการคัดเลือกในขั้นตอนก่อนหน้า) เราทำซ้ำอาร์กิวเมนต์นี้เรากำหนดจุดยอดที่สมบูรณ์C CCCC


4

คำแนะนำ: สร้างการจับคู่ที่มีขนาดเดียวกันกับปกจุดสุดยอดของคุณโดยจับคู่แต่ละจุดยอดในฝาครอบกับเด็กที่ไม่ได้เลือก พิสูจน์ว่าสำหรับการจับคู่ใดและจุดสุดยอดใด ๆ ปกCเอาเป็นว่าฝาครอบจุดยอดต่ำสุดและการจับคู่สูงสุดเอ็มซี|M||C|MC

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.