Graph
(4) -------------(3)
/ \
/ \
(5)------------(1)-----------(2)
in This Above graph 4 connected to 3 and 5. Then 3 connected to 2 and 4 and so on. Graph are Used To Various Algorithms and Technology for example, Shortest Path Algorithm.
1.Graph. 2.bidirectional Graph. 3.Weighted Graph.
Bidirectional Graph
We Can Travel Both Side . Like Two Way Road.
S======>E and E<=====S (start to end and end to start) vice versa.
Weighted Graph
Weighted Graph Have Length Of Path. Like Km Is Roadways.
Properties
- vertex
- edge
Vertex is a defined as start or end point.
Edge is a connection between start and end points
import java.util.*;
class graph<T>{
HashMap<T,LinkedList<T>> g=new HashMap<T,LinkedList<T>>();
public void addVertex(T vertex){
g.put(vertex,new LinkedList<T>());
}
public void makeEdge(T start,T end,boolean byDirection){
//Check Start vertex Is Already Available Or Not
if(!g.containsKey(start)){
addVertex(start);
}
//Check Start vertex Is Already Available Or Not
if(!g.containsKey(end)){
addVertex(end);
}
//Add Root From Start To End
g.get(start).add(end);
//Add Root From Path End to Start
if(byDirection){
g.get(end).add(start);
}
}
public graph getGraph(){
return this;
}
}
class adjencencyList{
public static void main(String[] args){
graph<Integer> g=new graph<Integer>();
g.makeEdge(5,10,true);
g.makeEdge(5,15,true);
g.makeEdge(15,20,true);
System.out.println(g.getGraph().g);
}
}
output:
{20=[15], 5=[10, 15], 10=[5], 15=[5, 20]}
Comments
Post a Comment