以锯齿状数组插入列

时间:2012-07-22 08:03:44

标签: c# linq jagged-arrays

int RowCount; //This will be approx in the range 1,00,000
int[][] SourceJaggedArray;
int ColumnCount; //This is will be approx in the range 15 - 20

目前,我为每行的所有列填充值非常慢。但根据业务逻辑,我知道至少5列的所有值都是-1,而对于大约5列,所有值都相同(但来自变量)。

因此我想知道是否有一种通过将数组插入特定列索引来填充锯齿状数组的有效方法:

SourceJaggedArray[][0] = firstColumnArray;
SourceJaggedArray[][1] = secondColumnArray;

1 个答案:

答案 0 :(得分:0)

我觉得不是很有效而且不完全是你想要的但是......

1选项可能是做

之类的事情
int[][] SourceJaggedArray=new int[20][];
SourceJaggedArray[0]=firstColumnArray;
SourceJaggedArray[1]=secondColumnArray;

然后根据需要旋转数组锯齿状数组(请参阅C#, rotating 2D arrays

我更喜欢的第二个选项是

List<int[]> source=new List<int[]>();
source.Add(firstColumnArray);
source.Add(secondColumnArray);