Я работаю с деревом лексики, структурой данных дерева k-ary
с глубиной L
, что является результатом итеративного запуска иерархического k-means
кластеризации. Это несимметричная структура, поскольку процесс кластеризации может прекратиться, когда количество назначенных точек данных в кластере меньше, чем количество кластеров.Как хранить неуравновешенное дерево в матрице
Моя проблема заключается в том, что мне требуется хранить это дерево в матричном формате.
Я думал о простом хранении его в первом порядке, но отходы памяти могут быть слишком высокими, если разница между фактическим количеством узлов, скажем n
, и теоретическое число узлов в сбалансированном дереве увеличивается, что является:
n << (1-k^L)/(1-k)
есть ли способ эффективного хранения несбалансированного дерева в виде матрицы, не теряя память или тратить меньше можно?