![]() |
VOOZH | about |
Given a undirected Graph of N vertices 1 to N and M edges in form of 2D array arr[][] whose every row consists of two numbers X and Y which denotes that there is a edge between X and Y, the task is to write C program to create Adjacency Matrix of the given Graph. Examples:
Input: N = 5, M = 4, arr[][] = { { 1, 2 }, { 2, 3 }, { 4, 5 }, { 1, 5 } } Output: 0 1 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 0 Input: N = 3, M = 4, arr[][] = { { 1, 2 }, { 2, 3 }, { 3, 1 }, { 2, 2 } } Output: 0 1 1 1 1 1 1 1 0
Approach: The idea is to use a square Matrix of size NxN to create Adjacency Matrix. Below are the steps:
Below is the implementation of the above approach:
0 1 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 0
Time Complexity: O(N^2), where N is the number of vertices in a graph.
Space Complexity: O(N^2), where N is the number of vertices.