Proposition pour générer les codes
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
public class HuffmanNode{
|
public class HuffmanNode{
|
||||||
private int value;
|
private char value;
|
||||||
private int frequence;
|
private int frequence;
|
||||||
|
|
||||||
private HuffmanNode left;
|
private HuffmanNode left;
|
||||||
@@ -7,7 +7,7 @@ public class HuffmanNode{
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
public HuffmanNode(int v,int f){
|
public HuffmanNode(char v,int f){
|
||||||
this.value = v;
|
this.value = v;
|
||||||
this.frequence = f;
|
this.frequence = f;
|
||||||
this.right = null;
|
this.right = null;
|
||||||
|
|||||||
@@ -30,4 +30,22 @@ public class HuffmanTree{
|
|||||||
|
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Map<Integer,String> generateCodes(){
|
||||||
|
// methode recursive : appliquer à chaque branche de l'abre , chaque feuille !!!
|
||||||
|
// 1 - trouver cas de base + comment generer les codes :
|
||||||
|
|
||||||
|
/*
|
||||||
|
il nous faut differencier plusieurs cas si c'est la racine de l'abre
|
||||||
|
et surtout si on met zero ou 1 selon si le fils droit ou gauche
|
||||||
|
|
||||||
|
*/
|
||||||
|
// le type des clés et valeurs sont susceptibles de changer :
|
||||||
|
Map<Integer,String> dictionnaire = new HashMap<>();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return dictionnaire;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user