Hirdetés
Új hozzászólás Aktív témák
-
#74220800
törölt tag
Ja maradt az arraylist, az a legkézenfekvőbb. De valamiért, a leadó system testje vmiert ezt a hibát írja ki:
Removed two elements but the second one had a lower priority than the first one! Amit nem értek. Amugy itt van a programom(class nevet most atneveztem):
import java.util.ArrayList;
public class MyPriorityQueue<T extends Comparable<T>> {
private ArrayList<T> queue;
private int maxElements;
public MyPriorityQueue(int maxElements){
this.maxElements = maxElements;
queue = new ArrayList<T>();
}
public void add(T e) throws IllegalStateException{
if( size() == maxElements)
throw new IllegalStateException("The queue is already full!");
queue.add(e);
int i = size()-1 ;
T help;
while ( i > 0 && ( queue.get( parent(i) ).compareTo( queue.get(i) ) ) > 0 ){
help = queue.get(i);
queue.set(i,queue.get( parent(i) ));
queue.set(parent(i), help);
i = parent(i);
}
}
public T pop() throws IllegalStateException{
if(queue.isEmpty())
throw new IllegalStateException("The queue is empty!");
T min = queue.get(0);
queue.remove(0);
minheapify(0);
return min;
}
public int size(){
return queue.size();
}
public int parent(int i){
return (i - 1) / 2;
}
public void minheapify(int i){
int l = i*2+1;
int r = l+1;
int min;
T help;
if (l <= size()-1 && ( queue.get(l).compareTo( queue.get(i) ) ) < 0 )
min = l;
else
min = i;
if (r <= size()-1 && ( queue.get(r).compareTo( queue.get(min) ) ) < 0)
min = r;
if (min != i){
help = queue.get(i);
queue.set(i,queue.get(min));
queue.set(min, help);
minheapify(min);
}
}
public void display(){
for(int i = 0; i < queue.size(); i++) {
System.out.print(queue.get(i) + " ");
}
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- RAID
- Vivo X300 - kicsiben jobban megéri
- OLED TV topic
- Battlefield 6
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Milyen TV-t vegyek?
- Luck Dragon: Asszociációs játék. :)
- Robotporszívók
- Toomy: FOXPOST: régen jó volt, de már jobban jársz, ha elfelejted
- Győr és környéke adok-veszek-beszélgetek
- További aktív témák...
- iPhone 17 256 GB Levander - Bontatlan !! www.stylebolt.hu - Apple eszközök és tartozékok !!
- iPhone 12 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3581
- Új Apple iPhone 16 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 14 Pro Max 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS2998, 100% Akksi
- Apple iPhone 15 Pro / 256GB / Kártyafüggetlen / 12Hó Garancia / Akku: 88%
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


