Удалить повторяющиеся элементы. 2-х кратная вложенность. Список List - C#

Узнай цену своей работы

Формулировка задачи:

Есть структура типа:
Листинг программы
  1. List<List<byte[]>> Sostoyania_Byte = new List<List<byte[]>>();
Её надо во что-то вытащить такое, чтобы без полного перебора удалить повторяющиеся массивы byte[]. Ну или с циклами...

Решение задачи: «Удалить повторяющиеся элементы. 2-х кратная вложенность. Список List»

textual
Листинг программы
  1. class BytesComparer : IEqualityComparer<byte[]>
  2. {
  3.     public bool Equals(byte[] x, byte[] y) => x.SequenceEqual(y);
  4.     public int GetHashCode(byte[] x) => 0
  5. }
  6.  
  7. void Main()
  8. {
  9.     var matrix = new List<List<byte[]>>()
  10.     {
  11.         new List<byte[]>
  12.         {
  13.             new byte[] {1, 2, 3},
  14.             new byte[] {1, 2}
  15.         },
  16.         new List<byte[]>
  17.         {
  18.             new byte[] {1, 2},
  19.             new byte[] {1, 2, 3, 4}
  20.         }
  21.     };
  22.    
  23.     var diversity = matrix.SelectMany(list => list)
  24.         .Distinct(new BytesComparer())
  25. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы