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

Best LeetCode Lists for Interviews

Here is a list of some of the best questions asked in interviews Must do Top interview questions Top 100 liked Must do 75  Must do 60  Must do medium Data structures Tree Graph  Dynamic Programming Company Interviews FaceBook interviews Amazon Interviews Google Interviews Github master List

EDIT DISTANCE PROBLEM - LEETCODE 72

  Given two words  word1  and  word2 , find the minimum number of operations required to convert  word1  to  word2 . You have the following 3 operations permitted on a word: Insert a character Delete a character Replace a character Example 1: Input: word1 = "horse", word2 = "ros" Output: 3 Explanation: horse -> rorse (replace 'h' with 'r') rorse -> rose (remove 'r') rose -> ros (remove 'e') Solution:- class Solution { public int minDistance(String word1, String word2) { if(word1.length()==0){ return word2.length(); } if(word2.length()==0){ return word1.length(); } if(word1.length()==0 && word2.length()==0){ return 0; } int[][] result=new int[word1.length()+1][word2.length()+1]; for(int i=0;i<=word1.length();i++){ result[i][0]=i; } ...