У меня есть два списка. Но не обычные.Подсчет вхождений элементов из одного списка в другой список
Первое:
Combinations<string> someCombination = new Combinations<string>(someOtherList, 2);
var firstList = someCombination.ToList();
возвращает:
[0] { cy gr }
[1] { cy ja }
[2] { cy ka }
[3] { cy wo }
[4] { cy zo }
[5] { gr ja }
[6] { gr ka }
[7] { gr wo }
[8] { gr zo }
[9] { ja ka }
[10] { ja wo }
[11] { ja zo }
[12] { ka wo }
[13] { ka zo }
[14] { wo zo }
Второе:
List<List<string>> secondList = new List<List<string>>();
возвращает:
[0] { gr ch wo zo }
[1] { zo cy gr ma }
[2] { wo po ja cy }
[3] { ja ka po gr }
[4] { zo ka ja og }
[5] { cy ja zo wo }
[6] { gr og po ma }
[7] { wo zo ka cy }
[8] { gr og wo ja }
[9] { ja ka ch wo }
Как вы можете видеть, я использую библиотеку Combinatorics.Collections
. Я действительно хочу, чтобы подсчитать, сколько раз и string
элементов из firstList
происходит в целом secondList
и сохраняет все эти цифры в третьем списке. Как это:
List<int> occurrences = new List<int>();
Это пример того, как бы этот список выглядеть, каждый индекс соответствует firstList
индекс:
[0] 1 //because both "cy" and "gr" are contained in 1 secondList sublist(s)
[1] 2 //because both "cy" and "ja" are contained in 2 secondList sublist(s)
[2] 1 //et cetera..
[3] 3
[4] 1
[5] 2
[6] 1
[7] 2
[8] 2
[9] 3
[10] 4
[11] 2
[12] 2
[13] 2
[14] 3
^Если я сделал ошибку, считая тех, мой плохой.
Я принимаю его LINQ, вероятно, пригодится здесь, но я полностью безнадежен с ним. Поправьте меня, если я ошибаюсь. Я бы очень признателен за помощь здесь.
Честно говоря, я забочусь только об этом, если это дает результат, и ваше решение действительно так же, как и я. У вас есть глубочайшая благодарность! – goliatpiotr
@goliatpiotr: Отлично! Могли бы вы принять мой ответ? – Tim
Извините, им новый с этим переполнением стека. Я думаю, что теперь я принял это. Береги себя! – goliatpiotr