public void connect(TreeLinkNode root) {
		if (root == null)
			return;
		ArrayList<TreeLinkNode> queue = new ArrayList<TreeLinkNode>();
		queue.add(root);
		while (!queue.isEmpty()) {
			ArrayList<TreeLinkNode> temp = queue;
			for (int i = 0; i < temp.size() - 1; i++) {
				temp.get(i).next = temp.get(i + 1);
			}
			temp.get(temp.size() - 1).next = null;
			queue = getChildren(temp);
		}

	}