【发布时间】:2022-01-12 19:25:39
【问题描述】:
我正在尝试使用递归在 Java 中重新创建 sierpinski 地毯。
假设我有以下内容:
static int size = 9;
static char[][] board = new char[size][size];
并且我想删除中间的 3x3 子数组,我将如何仅使用递归来执行此操作?
【问题讨论】:
我正在尝试使用递归在 Java 中重新创建 sierpinski 地毯。
假设我有以下内容:
static int size = 9;
static char[][] board = new char[size][size];
并且我想删除中间的 3x3 子数组,我将如何仅使用递归来执行此操作?
【问题讨论】:
您不能从声明的数组中删除子数组,就像您声明它一样。但是你绝对可以复制它。我在下面的解决方案中添加了 cmets 供您填写。
public char[][] copySubArray(char[][] orig, int colWidth, int rowHeight, int start_x, int start_y) {
//do bounds testing on orig based on starting values and width/height
char[][] copy = new char[colWidth][rowHeight];
//copy values from orig to copy
return copy;
}
【讨论】: