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

How to design a Node in Tree?

How to design a Node in Tree?

There are three main components of a tree in a node.

 1) Integer holding data.
2) Left pointer holding node in a left subtree.
3) Right pointer holding node in a right subtree.

The following design is having data of int type and left,right pointers of a node to the subtrees.


package com.BST;publicclassNode{int data; Node left; Node right;/** * @return the data */publicNode(int data){this.left=null;this.right=null;this.data=data;}publicintgetData(){return data;}/** * @param data the data to set */publicvoidsetData(int data){this.data= data;}/** * @return the left */public Node getLeft(){return left;}/** * @param left the left to set */publicvoidsetLeft(Node left){this.left= left;}/** * @return the right */public Node getRight(){return right;}/** * @param right the right to set */publicvoidsetRight(Node right){this.right= right;}/* (non-Javadoc) * @see java.lang.Object#toString() */@Overridepublic String toString(){return"Node [data=&quo…

Heap implementation in JAVA

In this tutorial we will see all the functionalities of heaps implemented through java language.



package com.problems.heap;publicclassHeapFunctions{//Function to generate maxheapify where root is max than childspublicvoidmaxHeapify(int Arr[],int i,int N){int largest;int left =2*i+1;//left childint right =2*i +2;//right child System.out.println("left"+" "+left); System.out.println("right"+" "+right); System.out.println("Max size"+" "+N);if(left< N && Arr[left]> Arr[i]){ largest = left; System.out.println("largest left"+largest);}else{ largest = i; System.out.println("largest i"+largest);}if(right < N && Arr[right]> Arr[largest]){ largest = right; System.out.println("largest right"+largest);}if(largest != i ){ System.out.println("No largest"+largest); Arr=swap (A…