我们可以声明一个锯齿状数组,其中一些是一维的,一些是二维或多维数组。有什么建议。
int[][,] jaggedArray1 = new int[3][,]
{
new int[,],
new int[,],
new int[,]
};
int[][] = new int[3][]
{
new int[],
new int[],
new int[]
};
我们可以把这两者做成一个数组吗?
例子
我在这里给出数独最合适的例子。:)
假设我们有一个二维字符串数组(比如网格),分为子网格。我正在显示一些数据。
4x4 网格。分为4个子网格。每个元素都是一个包含在“”中的字符串
"1,3,", "2,3" "1,3,", "2,3"
"1,4,", "4,1" "1,3,", "2,3"
"1,3,", "2,3" "1,3,", "2,3"
"1,4,", "4,1" "1,3,", "2,3"
如果从第 1 行、第 1 列和第 1 个区域中删除“1”。我们如何跟踪或维护已更改的行、已更改的列以及已更改的每个字符串值的 LOG。
以最低的空间复杂度给出建议。
由于我们无法制作另一个重复的二维数组,因为将会浪费大量空间。
在我看来,我需要 3 个数组。
一维数组将记录更改的行 一维数组将记录 COLS 更改 二维数组将记录 CELL VALUE CHANGED
如果我们将所有这三个数组转换为一个。工作会轻松很多。
我希望我解释了这个场景。当我尽力而为时:D。