diff --git a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/utils/BinaryHeap.java b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/utils/BinaryHeap.java index 69ecef1..b0770cf 100644 --- a/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/utils/BinaryHeap.java +++ b/be-graphes-algos/src/main/java/org/insa/graphs/algorithm/utils/BinaryHeap.java @@ -138,10 +138,10 @@ public class BinaryHeap> implements PriorityQueue { @Override public void remove(E x) throws ElementNotFoundException { int index=this.array.indexOf(x); - if (index<0) + if (index<0 || this.currentSize<=index) throw new ElementNotFoundException(x); - this.array.set(index, this.array.get(this.array.size()-1)); + this.array.set(index, this.array.get(this.currentSize-1)); this.currentSize--; this.percolateDown(index); }