From 186c9f8459d33a8a244c0ded7f6af42ecf22b187 Mon Sep 17 00:00:00 2001 From: "tanguy.dietrich" <tanguy.dietrich@etu.hesge.ch> Date: Sun, 3 Nov 2019 11:42:53 +0100 Subject: [PATCH] Ecriture de .depth() pour le BinaryHeap --- src/main/java/ch/hepia/structure/BinaryHeap.java | 12 ++++++++++++ src/test/java/ch/hepia/structure/AppTest.java | 1 + 2 files changed, 13 insertions(+) diff --git a/src/main/java/ch/hepia/structure/BinaryHeap.java b/src/main/java/ch/hepia/structure/BinaryHeap.java index e05737a..f0300b9 100644 --- a/src/main/java/ch/hepia/structure/BinaryHeap.java +++ b/src/main/java/ch/hepia/structure/BinaryHeap.java @@ -35,6 +35,18 @@ final public class BinaryHeap } } + public int depth() + { + int index=this.size(); + int dptCompteur=1; + while(index!=0) + { + index=this.getParentNodeIndex(index); + dptCompteur++; + } + return dptCompteur; + } + public boolean exist(int k) { for(int val:this.lstBinaryHeap) diff --git a/src/test/java/ch/hepia/structure/AppTest.java b/src/test/java/ch/hepia/structure/AppTest.java index f0234d8..3da01ab 100644 --- a/src/test/java/ch/hepia/structure/AppTest.java +++ b/src/test/java/ch/hepia/structure/AppTest.java @@ -35,5 +35,6 @@ class BinaryHeapTest assertEquals(bHeapRand.isEmpty(),false); assertEquals(bHeap.exist(7),true); assertEquals(bHeap.exist(42),false); + assertEquals(bHeap.depth(),4); } } -- GitLab