ผลต่างระหว่างรุ่นของ "Biconnectedness (ค่ายวันที่ 11 มีนาคม 2551)"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 11: แถว 11:
  
 
== การหา articulation point ==
 
== การหา articulation point ==
 +
เราสามารถหา articulation point ทั้งหมดของกราฟที่กำหนดให้ได้ในเวลา <math>O(|V|+|E|)\,</math> โดยการทำ DFS เพียงรอบเดียว

รุ่นแก้ไขเมื่อ 11:33, 12 มีนาคม 2551

กำหนด undirected graph ซึ่งเป็นกราฟต่อเนื่อง ใดๆ

  • เราเรียก vertex ว่าเป็น articulation point ถ้่าเราตัด และ edge ที่ต่อกับมันทั้งหมดออกไปออกจากกราฟแล้วจะทำให้กราฟเป็นกราฟไม่ต่อเนื่อง
  • เราเรียก edge ว่าเป็น bridge ถ้าเราตัด ออกจากกราฟแล้วจะทำให้กราฟเป็นกราฟไม่ต่อเนื่อง
  • เรากล่าวว่า edge สอง edge ใดๆ อยู่ใน biconnected component เดียวกันก็ต่อเมื่อมี simple cycle ที่มี edge ทั้งสองนั้นอยู่ภายใน

จะเห็นได้ว่าความสัมพันธ์ "อยู่ใน biconnected component เดียวกัน" จะแบ่ง edge ออกเป็นกลุ่มๆ ซึ่งเราเรียกกลุ่มเหล่านั้นว่า biconnected component (นั่นแหละ)

ภาพต่อไปนี้แสดง articulation point (vertex สีแดง), bridge (edge เล็กบางสีแดง), และ biconnected component (edge ที่ไม่ใช่ bridge ที่อยู่ใน biconnected component เดียวกัน จะมีสีเดียวกัน) ของกราฟต่อเนื่องกราฟหนึ่ง

Biconnectedness-01.JPG

การหา articulation point

เราสามารถหา articulation point ทั้งหมดของกราฟที่กำหนดให้ได้ในเวลา โดยการทำ DFS เพียงรอบเดียว