我需要在代码中编写一个方法,该方法可以获取二维数组并返回数组中有多少个不同的组。组被定义为“在上/下/左/右(非对角线)方向上直接连接到其他单元格的所有单元格”,其中数组中的单元格用星号表示。我需要编写一个遍历整个数组的方法,该方法还调用一个递归方法,该方法将每个星号更改为该组的唯一字母。例如,这是一个示例输入:
char image[][] = {
{'*','*',' ',' ',' ',' ',' ',' ','*',' '},
{' ','*',' ',' ',' ',' ',' ',' ','*',' '},
{' ',' ',' ',' ',' ',' ','*','*',' ',' '},
{' ','*',' ',' ','*','*','*',' ',' ',' '},
{' ','*','*',' ','*',' ','*',' ','*',' '},
{' ','*','*',' ','*','*','*','*','*','*'},
{' ',' ',' ',' ',' ',' ',' ',' ','*',' '},
{' ',' ',' ',' ',' ',' ',' ',' ','*',' '},
{' ',' ',' ','*','*','*',' ',' ','*',' '},
{' ',' ',' ',' ',' ','*',' ',' ','*',' '}
};
输出是这样的:
aa b
a b
cc
d ccc
dd c c c
dd cccccc
c
c
eee c
e c
我主要需要迭代给定图像的方法的帮助,因为我不知道如何使代码区分组。
1条答案
按热度按时间f0ofjuux1#
你的概念应该是这样的。
第一个电话是
checkField (0, 0 , 'a');
你需要创建一个新的字符数组。这将是一个示例变量。你可以把x,y矩阵建模为数组。其中x mod y是一条线。这将使进步更容易。但不够直观。
尝试实现伪代码,并随时详细更新您的问题。