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