我有一个二维数组,也有起点和终点。数组初始化为零,我必须用一个更新从开始到结束位置。这样做的最佳算法是什么?
例如,如果开始和结束位置是(2,2)和(4,2),我需要开始从2,2更新值并在4,2结束。数组的其余部分应为零。
答案 0 :(得分:7)
只需从开始索引到结束索引循环遍历数组。
for(int i = startCol; i <= endCol; i++) {
for(int j = startRow; j <= endRow; j++) {
a[i][j] = 1;
}
}
这需要O(n^2)
时间,但我认为这是你能做的最好的事情。