int (int shortIndex) { checkShortIndex(shortIndex); int node = 1; for (int level = 0; level < myCountLevels - 1; level++) { int child = node << 1; int countInChildNode = getCountInNode(child); if (countInChildNode > shortIndex) { node = child; } else { node = child + 1; shortIndex -= countInChildNode; } } return node - myTree.length; }