Monday, July 6, 2015

Graph : Creation of UnWeighted Graph using Matric Representation

package com.graph;

class Graph {
int[][] graphMatrix;
Vertex[] vertArray;
int vertCount;
int size;

Graph() {
size = 5;
vertArray = new Vertex[size];
graphMatrix = new int[size][size];
vertCount = 0;
for (int i = 0; i < size; i++)
for (int j = 0; j < size; j++)
graphMatrix[i][j] = 0;
}

void addVertex(char ch) {
addVertex(ch, vertArray);
}

void addVertex(char ch, Vertex[] vertArray) {
Vertex vert = new Vertex(ch);
// vertArray = new Vertex[size+3];
vertArray[vertCount++] = vert;
}

void addEdge(int src, int dest) {
graphMatrix[src][dest] = 1;
}

void displayGraph() {
for (int i = 0; i < size; i++)
for (int j = 0; j < size; j++)
if (graphMatrix[i][j] == 1)
System.out.println(" " + graphMatrix[i][j] + " "
+ vertArray[i].label + " " + vertArray[j].label);
}

}

class Vertex {
char label;

Vertex(char label) {
this.label = label;
}
}

class Edge {
char src;
char dest;

Edge(char src, char dest) {
this.src = src;
this.dest = dest;
}

}

public class GraphSample {
public static void main(String args[]) {
Graph graph = new Graph();

graph.addVertex('A');
graph.addVertex('B');
graph.addVertex('C');
graph.addVertex('D');
graph.addVertex('E');

graph.addEdge(0, 1);
graph.addEdge(0, 2);
graph.addEdge(2, 3);
graph.addEdge(3, 3);
graph.addEdge(1, 4);

graph.displayGraph();

}

}

No comments:

Post a Comment