Another one of Data Structure Graph Another one of Data Structure By Apiwat Uaprayotkul
Graph ? Nonlinear Data Structure ประกอบด้วย เซตของเส้น (Edge) เซตของจุด (Node)
Edge & Node ? Edge ทีหน้าที่ เชื่อม Node เข้าด้วยกัน เซตของ edge แทนด้วย EG บางครั้งเรียกว่า Vertice เซตของ Node แทนด้วย VG จำนวนสมาชิกใน VG เรียกว่า Order เรียกกราฟที่ Order เท่ากับ 0 ว่า Null Graph
Simple Graph ต้องไม่มีการวนลูปของเอจเกิดขึ้นใน EG หรือมี Path(V,V) ต้องไม่มีเอจมากกว่าหนึ่งเชี่อมต่อกันระหว่างสองโหนด
If not a Simple Graph ? เรียกกราฟที่ไม่ใช่ Simple Graph ว่า MultiGraph
Connected Graph เรียกกราฟ G ว่า Connected Graph ก็ต่อเมื่อ ไม่สามารถแบ่งกราฟ G ออกเป็นสองกราฟย่อยได้ นอกจากจะมีการตัด Edge ใด Edge หนึ่งออกไป An Unconnected Graph
Adjacency Matrix ใช้ Array 2 มิติ ในการสร้าง เป็นวิธี implement Graph แบบหนึ่ง
Adjacency Matrix ให้กราฟ G มีเซ็ตของโหนดเป็น VG และเซ็ตของเอจเป็น EG โดยกราฟมีออเดอร์เท่ากับ N ซึ่ง N >= 1 แนวทางหนึ่งในการกำหนดเป็นกราฟโดยใช้แมตทริกติดกัน (Adjacency Matrix) เป็นอาร์เรย์ N-ต่อ-N เมื่อให้เป็นอาร์เรย์ A จะได้ว่า หมายความว่า หากมีเอจที่เชื่อมต่อกันระหว่างโหนด i กับ j ก็จะได้ A(i,j) = 1 ไม่เช่นนั้นให้มีค่าเป็น 0
Adjacency Matrix Graph Adjacency Matrix
Adjacency Matrix Directed Graph Adjacency Matrix
Operations adjacent(G, x, y); neighbors(G, x); add(G, x, y); delete(G, x, y); get_node_value(G, x); set_node_value(G, x, a); get_edge_value(G, x, y); set_edge_value(G, x, y, v);