Добрый день, есть структура данных полученная выборкой из БД иерархической структуры, пусть будет Город-Район-Устройство, обозначим их для простоты числовыми значениями. Получаем набор кортежей, я так понимаю они не обязательно должны быть упорядочены
1 1 1
1 1 2
1 2 3
1 3 3
2 4 6
2 4 7
2 4 8
3 5 9
1 5 6
Должно получиться
1-|
1-|
1
2
5-|
6
2-|
3
2
4-|
6
7
3
5-|
9
Вопрос заключается вот в чем, на мой взгляд задача похожа на стандартную и мне кажется ей уже название придумали или надо самостоятельно решать? Интересуюсь в плане быстродействия, т.к. дерево получается порядка нескольких тысяч узлов.