public ArrayList<Integer> suffixTreeSearch(String pattern)
    {
    	ArrayList<Integer> resultList = new ArrayList<Integer>();
    	boolean found = true;
    	TreeNode currentNode=root;
    	while(pattern.length()>0 && found)
    	{	
    		if(currentNode.getChildHash().get(pattern.charAt(0))!=null)
    		{
    			TreeNode currentChild=currentNode.getChildHash().get(pattern.charAt(0));
    			String alpha= currentChild.getInputEdgeLabe();
    			for(int i=1;i<Math.min(alpha.length(), pattern.length());i++)
    			{
    				if(pattern.charAt(i)!=alpha.charAt(i))
    				{
    					found=false;
    					break;
    				}
    				
    			}
    			if(found)
    			{
    				if(pattern.length()<=alpha.length())
    				{
    					System.out.println(findAllLeafs(currentChild));
    					resultList=findAllLeafs(currentChild);
    					//System.out.println("Juhu gefunden!");
    					break;
    				}
    				else
    				{
    					pattern=pattern.substring(alpha.length());
    					currentNode=currentChild;
    				}
    			}
    		}
    		else
    		{
    			found=false;
    			System.out.println("Leider nein!");
    		}
    		
    	}
    	return resultList;
    }