Skip to main content

Basic Graph Data Structure Initialization Using Java Programming.

 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

  1. vertex
  2. 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

Popular posts from this blog

LPS(Longest Prefix Which Is Also Suffix) Array Generation Using Java

import java.util.* ; //Longest Prefix Which Is Also Suffix Which Is Used To Found a Pattern Through Avoid Repeated Characters in Given String. We Will Discuss KMP ALGORITHM TO Find A Pattern In Given String Latter. class lbs{ public static void main( String [] args){ Scanner in= new Scanner(System.in); //Get Input From User String s=in.nextLine(); //Convert String Into Char Array char [] ch=s.toCharArray(); int n=s.length(); int [] lbsArr= new int [n]; int j= 0 ,i= 1 ; lbsArr[ 0 ]= 0 ; //LPS ARRAY ALGORITHM /* i=1; j=0; string s="aaab" while i<n if s[i]==s[j]: lpsArr[i]=j; j=j+1 i=i+1 else: if j==0: lbsArr[j]=0 i=i+1 else: ...

Stack is Linear Data Structure- Basic DSA In Java Programming

  /* Stack Is a Linear Data Structure.FIFO(First In First Out) or LIFO(Last In First Out). [ Elements ] [ Elements ] [ Elements ] [ Elements ] */ import java.util.*; class stack{ public static void main( String [] args){ Stack < Integer > s= new Stack < Integer >(); //Push Element To Stack s.push( 10 ); s.push( 5 ); s.push( 2 ); s.push( 1 ); System.out.println(s); /* After Push The Stack Like [ 1 ] <---Push And Pop In Top Of The Statck [ 2 ] [ 5 ] [ 10] */ //Pop Element From Statck s.pop(); System.out.println(s); /* After Pop From Stack [ 1 ]--> Pop From Top Of The Stack [ 5 ] [ 10] */ System.out.println(s.peek()); /* s.peek(); Shows Top Of The Stack */ /* s.empty() returns boolean V...

if control statement - Basic Programming Concepts With psudo Code

if( )  is a control statement. it based on some condition. if the condition can true the block of statements can execute other wise skip the statements. syntax if([condition]) { //statement; } example1, #include<stdio.h> #include<conio.h> main() int num=1; { if(num==1) { printf("\n its true"); } } from the above program we can declare the variable named as num and assign the value as 1. then, check the value 1 equal value of num through if statement.the statement can true.so, the block of statements can executed. example2, #include<stdio.h> #include<conio.h> main() int num=5; { if(num==1) { printf("\n its true"); } } suppose the value of num is 5.the block of if statement can skip to execution.