Skip to main content

Priority Queue implementation in java -Arrays

Priority Queue implementation in java -Arrays


Input:- 4,8,1,7,3,5
output:-8,7,5,4,3,1,



package com.problems.heap;

public class Priority_Queue {

 public int[] priority_Queue(int arr[],int N)
 {
  int[] newarray=new int[N];
  
  for(int i=0;i<N;i++)
  {
   System.out.println(i+"priority_Queue"+arr[i]);
   insert(newarray,N,arr[i]);
  }
  return newarray;
 }
 
 //inserting new element in array
 public void insert(int Arr[],int N,int a)
 {
  for(int i=0;i<N;i++)
  {
   System.out.println("insert");
   // search for the correct position in array
   if(a>Arr[i])
   {
    System.out.println("call insertAtThis");
    Arr=insertAtThis(Arr,N,a,i);
    break;
   }
  }
 }
 
 //insert and swap
 public int[] insertAtThis(int arr[],int N,int a,int index)
 {
  System.out.println("insertAtThis");
  System.out.println("index"+index);
  int j=index;
  N=N-1;
  while(N!=index)
  {
   arr[N]=arr[N-1];
   N--;
   
  }
  
  arr[index]=a;
  print(arr);
  return arr;
  
 }
 
 //print function
 public void print(int Elemmm[])
 {
  for(int i=0;i<Elemmm.length;i++)
  {
   
   System.out.print(Elemmm[i]+",");
   
  }
  System.out.println("");
 }
 
 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
 Priority_Queue func=new Priority_Queue();
  int Elemmm[]={4,8,1,7,3,5};
  System.out.println("");
  System.out.println("priority queue");
  Elemmm=func.priority_Queue(Elemmm, Elemmm.length);
  System.out.println("");
  func.print(Elemmm);
 }

}

Comments

.

Popular posts from this blog

Driver program to perform operations in graph

Driver program to perform operations in graph:-



package com.problems.graph;publicclassGraphDriver{publicstaticvoidmain(String[] args){ BFSGraph g=new BFSGraph(); g.addVertex('A'); g.addVertex('B'); g.addVertex('C'); g.addVertex('D'); g.addVertex('E'); g.addVertex('F'); g.addVertex('G'); g.addVertex('H'); g.addEdge(0,1); g.addEdge(1,2); g.addEdge(1,7); g.addEdge(2,3); g.addEdge(2,4); g.addEdge(7,4); g.addEdge(4,5); g.addEdge(4,6); g.bfs();}}

Shortest Path from source to Vertex :- Dijkstra Algorithm

Shortest Path from source to Vertex :- Dijkstra Algorithm:-

Dijkstra Algorithms is an algorithm use to find the shortest path from source vertex to a given vertex.



package Graph;importjava.util.HashMap;abstractpublicclassDirectedGraph{ Vertex[] vertexlist=new Vertex[10]; HashMap<Character,HashMap<Character,Integer>> edgelist=new HashMap<>(); Vertex vertex;//count of vertex and edgestaticint vertexcount=0;int edgecount=0;/* * This function takes a label and insert in the vertex list as well as edge list since it is new vertex it will add * null to its adjoining vertices */intaddVertex(char label){ vertex=new Vertex(label); vertexlist[vertexcount]=vertex; System.out.println(vertexlist[vertexcount].label); edgelist.put(vertex.label,null); vertexcount++;return vertexcount;}intaddEdge(char label,char[] labels,int[] distances){ HashMap<Character,Integer> vertexlist=new HashMap<>();for(int i=0;i<labels.length;i++){ vertexlist.put(labels[i],…