0
動態數組的笛卡爾乘積我跟了這使用LINQ C#拋出OutOfMemory例外
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陣列的笛卡爾積,我得到OutOfMemoryException異常。
我相信有人已經可能面臨類似的問題。如果你能爲我提供這個問題的解決方案,那將是非常好的。
在我看來,你可以有100^10個匹配,比int.MaxValue多約46.6 * 10億倍。 – 2012-02-20 15:20:29
是的,我想通了,我實際上是將組合結果存儲在一個列表中,導致這種內存異常。 而不是存儲所有的組合,我做了以下,每10000組合我採取最好的(根據我的業務邏輯)存儲在不同的列表中,並清理組合列表,它幫助我解決了我的問題。 – Esen 2012-02-20 17:23:47