Имеется следующий тип.
class SomeType
{
public int Id;
public string Name;
public int ParentSomeTypeId
}
В условный метод приходит список вот таких объектов, где некоторые из них могут могут быть дочерними по отношению к другим.
Прошу подсказать самый оптимальный способ отсортировать такой список, что бы без родителя был самым первым и дальше по убыванию, к дочерним. Что бы самым последним был объект без дочерних элементов.