Декартово произведение динамического массива с использованием исключения linq c # throw из памяти - PullRequest
0 голосов
/ 20 февраля 2012

Я следил за этим

http://blogs.msdn.com/b/ericlippert/archive/2010/06/28/computing-a-cartesian-product-with-linq.aspx

и создал динамический запрос linq для вычисления декартового произведения.

У меня есть 10 элементов массива, в каждом по 100 элементов.

A[100] B[100] C[100] . . . J[100]

Когда я пытаюсь вычислить декартово произведение моего массива от A до J, я получаю исключение из памяти.

Я уверен, что кто-то уже мог столкнуться с подобной проблемой. Было бы здорово, если бы вы могли дать мне решение этой проблемы.

1 Ответ

0 голосов
/ 10 мая 2012

Я понял, что на самом деле я сохранял результат комбинации в списке, который вызвал это исключение вне памяти. Вместо того чтобы хранить все комбинации, я сделал следующее: для каждой 10000 комбинаций, которые я выбираю, лучшую (исходя из моей бизнес-логики) сохраняйте в другом списке и очищайте список комбинаций, это помогло мне решить мою проблему.

...