【发布时间】:2015-06-09 10:59:46
【问题描述】:
这是我在这里的第一个问题,所以我希望我做得对。
我必须创建一个整数数组列表:
List<int[]> finalList = new List<int[]>();
为了存储K个元素与N个数字的所有组合。
例如:
N=5, K=2 => {1,2},{1,3},{1,4},...
一切都很好,但我想避免列表中相同组合的重复(例如{1,2} 和{2,1})。因此,在将 tmpArray(我临时存储新组合的位置)添加到列表中之前,我想检查它是否已经存储。
这就是我正在做的事情:
- 使用下一个组合创建 tmpArray (OK)
- 对 tmpArray 排序(确定)
-
使用以下代码检查列表是否已包含 tmpArray:
if (!finalList.Contains(tmpArray)) finalList.Add(tmpArray);
但它不起作用。谁能帮我解决这个问题?
【问题讨论】:
-
您是否首先考虑避免重复?例如。只添加元组
(n1, n2, ..., nK)为哪个n1 < n2 < ... < nK?
标签: c# arrays list contains exists