public List<DependencyNode<T>>[] getLevelNodes()
	{
		List<DependencyNode<T>>[] levelNodes = new ArrayList[maximumDepth + 1];

		for (int i = 0; i <= maximumDepth; i++)
		{
			levelNodes[i] = new ArrayList<DependencyNode<T>>();
		}

		for (int i = 0; i < orderedSize; i++)
		{
			DependencyNode<T> dn = orderedNodes[i];

			levelNodes[dn.getDepth()].add( dn );
		}

		return levelNodes;
	}