1. โครงสร้างข้อมูลแบบกราฟ (Graph) โครงสร้างข้อมูลกราฟเป็นโครงสร้างข้อมูลชนิดหนึ่งที่ประกอบด้วย เซตของโหนดข้อมูล ที่เรียกว่า เวอร์เทกซ์ (Vertex ) เซตของเส้นเชื่อม ระหว่างโหนด 2 โหนด เรียกว่า เอ็จ (edge) สามารถเขียนเป็นความสัมพันธ์ทางคณิตศาสตร์ได้ดังนี้ G = ( V, E) โดยที่ G คือ กราฟ V คือ เซตของโหนด E คือ เซตของ เส้นเชื่ อ มระหว่างโหนด
2. โครงสร้างข้อมูลแบบกราฟ (Graph) ตัวอย่าง กราฟ E = { AB,AC,AD,CD,CF,DE,EF,FG,EG} V = a,b,c,d,e V = {A,B,C,D,E,F,G} E = {ab,ac,ad,be,ce,cd,ed a b c d e A B C F E D G
7. Cycle คือ Path ที่มีอย่างน้อยสามโหนดและโหนดสุดท้ายอยู่ติดกับโหนดแรก Cycles: A-B-C-A C-B-A-C โครงสร้างข้อมูลแบบกราฟ (Graph) A B C
8. Connected graph คือ กราฟที่มี path จากโหนดใดๆ ไปยังโหนดอื่นทุกโหนดในกราฟ Undirected Graph โครงสร้างข้อมูลแบบกราฟ (Graph) A C B D
9. Connected graph ของ Directed Graph จะแบ่งออกเป็น Strongly connected graph กราฟที่โหนดทุกโหนดสามารถเชื่อมโยงถึงกันหมดทุกโหนด โครงสร้างข้อมูลแบบกราฟ (Graph) A D B F C H E G I
10. Weakly connected graph กราฟที่มีอย่างน้อย 2 โหนดที่ไม่สามารถเชื่อมโยงถึงกัน โครงสร้างข้อมูลแบบกราฟ (Graph) A D B F C H E G I
11. การแทนโครงสร้างข้อมูลกราฟ ใช้ linked list ที่เรียกว่า adjacency list จำนวน linked list ที่ได้จะ เท่ากับ จำนวน โหนดของกราฟ linked list ของโหนดใดๆจะเก็บรายชื่อโหนดทุกโหนดที่อยู่ติดกับโหนดนั้น 0 1 4 2 3 1 4 3 4 2 1