public ArrayList<Noeud> getLeaves() {  
    	ArrayList<Noeud> leavesList = new ArrayList<Noeud>();  
    	ArrayList<Noeud> childList = this.getChild();  
        if (childList.isEmpty()) {
        	leavesList.add(this);
            return leavesList;  
        } else {  
            int childNumber = childList.size();  
            for (int i = 0; i < childNumber; i++) {  
            	Noeud junior = childList.get(i);
            	if(!junior.hasChild())
            		leavesList.add(junior);  
                leavesList.addAll(junior.getLeaves());  
            }  
            return leavesList;  
        }  
    }