Как лучше построить древо из массива на JS/jQuery?
На входе есть массив будущих элементов древа с ID и ID их родителя (если он есть), такого вида: [(ID, parentID), (ID, parentID), ...].
Как из этого лучше построить древо с вложенностью (ul > li > ul > li), чтобы было не слишком накладно по ресурсам?
На данный момент реализовал это рекурсивной функцией с отдельным массивом, из которого удаляю уже выведенные элементы, пока он не кончится. Но есть подозрение что append для каждого элемента древа не есть хорошо.