Каков самый быстрый способ упорядочить неупорядоченный список элементов по индексу предшественника (или родительского) элемента с помощью LINQ?
Каждый элемент имеет уникальный идентификатор и идентификатор этого элемента ' s элемент-предшественник (или родительский), из которого может быть построен связанный список для представления упорядоченного состояния.
ID | Predecessor's ID
--------|--------------------
20 | 81
81 | NULL
65 | 12
12 | 20
120 | 65
Отсортированный порядок: {81, 20, 12, 65, 120}. (Упорядоченный) связанный список можно легко итеративно собрать из этих элементов, но можно ли это сделать с помощью меньшего количества операторов LINQ?
Изменить: Я должен был указать, что идентификаторы не обязательно являются последовательными. Я выбрал от 1 до 5 для простоты. См. Обновленные индексы элементов, которые являются случайными.