Отправляет email-рассылки с помощью сервиса Sendsay

За 2017-07-30

[prg] AW: поиск элементов списка

Здравствуйте Кирилл,
<Есть два списка l1 и l2 типа List<int>.
>Размер каждого списка заранее неизвестен, но сейчас для простоты
представим, что l1 содержит цифры 1,2,3,4, а l2 содержит цифры
>44,11,88,4,1.
>как видно цифры 1 и 4 есть в обоих списках.
>как можно обнаружить эти два совпадения, а найденные элементы записать в
третий список?
Решил тоже внести свою лепту в решение данной задачи :-)
// инициализируем третий список
List<int> l3 = new List<int>();
// прогоняем, например, список l1 через foreach
Foreach(int num in l1)
{
// сравниваем на совпадение в списке l2
// и при попадании вносим этот элемент в список l3
If(l2.Contains(num))
L3.Add(num);

}

С уважением
Владимир

   vkon@f*****.de 2017-07-30 23:10:57 (#3510330)

[prg] Re: поиск элементов списка

Здравствуйте.

LINQ имеет несколько методов для работы с множествами, в частности, можно
найти пересечение, посредством метода Intersect.
Выглядит это как-то так:

var first = new List<int> { 1, 2, 3, 4, 5 };
var second = new List<int> { 4, 5, 6, 7 8, 9 };
var intersection = first.Intersect(second);
foreach (var number in intersection)
Console.WriteLine(number);

В результате будут выведены числа 4 и 5.

С уважением, Константин.

   2017-07-30 16:28:31 (#3510276)

[prg] Re: поиск элементов списка

Приветствую всех!

List<int> result = Enumerable.Intersect(l1, l2).ToList();
result.ForEach(i=>Console.WriteLine(i));

Успехов. Анатолий.

   "i_chay" 2017-07-30 15:40:11 (#3510269)

[prg] Re: поиск элементов списка

В любом языке в списках реализована стандартная функция поиска. Берете
первый список, смотрите, есть ли элемент во втором списке, если есть, то
записываете. А как уж реализуете, да как угодно, хоть через for.

   2017-07-30 13:27:59 (#3510254)

[prg] поиск элементов списка

Приветствую всех присутствующих.

C#, VS2010.

Есть два списка l1 и l2 типа List<int>.
Размер каждого списка заранее неизвестен,
но сейчас для простоты представим, что l1 содержит цифры
1,2,3,4,
а l2 содержит цифры
44,11,88,4,1.
как видно цифры 1 и 4 есть в обоих списках.
внимание вопрос:
как можно обнаружить эти два совпадения, а найденные элементы записать в
третий список? Потыкался с for и foreach, но пока не выходит.

спасибо.

   2017-07-30 09:56:34 (#3510228)