Graph

A Graph consists of a finite set of vertices (or nodes) and set of Edges which connect a pair of nodes.

Terms

Mathematical graphs can be represented in data structure. We can represent a graph using an array of vertices and a two-dimensional array of edges. Before we proceed further, let's familiarize ourselves with some important terms

  • Vertex ( Node )

    : Each node of the graph is represented as a vertex. In the following example, the labeled circle represents vertices. Thus, A to G are vertices. We can represent them using an array as shown in the following image. Here A can be identified by index 0. B can be identified using index 1 and so on.

  • Edge

    : represents a path between two vertices or a line between two vertices. In the following example, the lines from A to B, B to C, and so on represents edges. We can use a two-dimensional array to represent an array as shown in the following image. Here AB can be represented as 1 at row 0, column 1, BC as 1 at row 1, column 2 and so on, keeping other combinations as 0.

  • Adjacency

    : Two node or vertices are adjacent if they are connected to each other through an edge. In the following example, B is adjacent to A, C is adjacent to B, and so on.

  • Path

    : Path represents a sequence of edges between the two vertices. In the following example, ABCD represents a path from A to D.

  • Reference terms

    μ•„μ§κΉŒμ§€ ν•„μš”ν•΄λ³Έμ μ΄ μ—†μŒ

    • μ •μ μ˜ 차수 ( Degree ): 무방ν–₯ κ·Έλž˜ν”„μ—μ„œ ν•˜λ‚˜μ˜ 정점에 μΈμ ‘ν•œ μ •μ μ˜ 수

    • μ§„μž… 차수 ( In-Degree ): λ°©ν–₯ κ·Έλž˜ν”„μ—μ„œ μ™ΈλΆ€μ—μ„œ μ˜€λŠ” κ°„μ„ μ˜ 수

    • μ§„μΆœ 차수 ( Out-Degree ): λ°©ν–₯ κ·Έλž˜ν”„μ—μ„œ μ™ΈλΆ€λ‘œ ν–₯ν•˜λŠ” κ°„μ„ μ˜ 수

    • 경둜 길이 ( Path Length ): 경둜λ₯Ό κ΅¬μ„±ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λœ κ°„μ„ μ˜ 수

    • λ‹¨μˆœ 경둜 ( Simple Path ): 처음 정점과 끝 정점을 μ œμ™Έν•˜κ³  μ€‘λ³΅λœ 정점이 μ—†λŠ” 경둜

    • 사이클 ( Cycle ): λ‹¨μˆœ 경둜의 μ‹œμž‘ 정점과 μ’…λ£Œ 정점이 λ™μΌν•œ 경우

Implementation

Last updated

Was this helpful?