* @param index
	 */
	private void buildByCount(K[] kArray, int index) {
		if(index >= (kArray.length))
			return;
		
		if(kArray[index]==null)
			throw new NullPointerException("key value can not be null!");
		
		
		
		//Search for the tempHST in children list
		CountTree<K> tempCountTree = new CountTree<K>(kArray[index]);		
		int indexOfChildren = children.indexOf(tempCountTree);
				
		if(indexOfChildren >= 0){
			tempCountTree = children.get(indexOfChildren);
			tempCountTree.incrCount();
			tempCountTree.buildByCount(kArray, ++index);
		}else{
			tempCountTree.incrCount();
			tempCountTree.buildByCount(kArray, ++index);
			children.add(tempCountTree);
		}
	}