Софтуерно Инженерство
Loading...
IIIRattleHeadIII avatar IIIRattleHeadIII 0 Точки

Как да подредя речник от стринг и лист в низходящ ред според броя на елементите в листа

Здравейте, имам въпрос.
Да кажем че имам:

Dictionary<string, List<string>> dic = new Dictionary<string, List<string>>();

Кат ключа(key) има лист от стрингове(values), и аз искам да го сортирам/подредя според ключа който има най - много елементи в своя списък, как става това?

След това трябва да се подреди по име на човека в азбучен ред, ако имат еднакъв брой елементи в списъците им. И списъците им трябва да са сортирани в азбучен ред също.

За яснота, на примерно ако добавим към речника:

Гошо - Маймуна, Зек, Мечка => 3 елемента в своя списък
Пешо - Куче, Котка, Динозавар, Крокодил => има 4 елемента в своя списък

 

как може сега да ги сортирам в низходящ ред според броя на елементи в списъците им, така че изхода да е:
Пешо - 4

Гошо - 3

 

0
Programming Fundamentals 08/07/2017 14:13:22
spzvtbg avatar spzvtbg 581 Точки

Collection

.OrderedByDescending(x => x.Values.Count())

.ThenBy( x => x.Key);

ако трябва да подреждаш и листовете тогава ползваи по добре SortedList , или при печатането го сортираи  в какъвто ред ти е нужен.

 

1