Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Сортировка (можно и без кода)

Игорь Алешин Гуру (2979), на голосовании 10 лет назад
есть список объектов, которые реализуют интерфейс
IField
{
string Key;
string BeforeKey;
}

Key - ключ объекта, BeforeKey - имя ключа предыдущего объекта.
Надо отсортировать этот список.

Код можно не писать, главное алгоритм.
Дополнен 10 лет назад
Например
есть 3 объекта
1. Key = Red, BeforeKey = null
2. Key = Green, BeforeKey = Blue
3. Key = Blue, BeforeKey = Red

в в итоге список должен быть таким
Red, Blue, Green
Голосование за лучший ответ
Вася Пупкин Гуру (4505) 10 лет назад
Ну если в лоб, то так:
ищем элемент, у которого BeforeKey == null
Он первый.
Смотрим его Key. Затем ищем в оставшихся элементах элемент с BeforeKey == Key первого. ("Red" в твоем примере. )
Ну и так далее. Не понятно только, могут ли ключи повторятся. Хотя если это именно ключи, то не должны вроде.
Похожие вопросы