【问题标题】:How do I transverse a 2D array given an int top, bottom, left, and right?如何在给定 int 顶部、底部、左侧和右侧的情况下遍历二维数组?
【发布时间】:2015-02-21 07:07:59
【问题描述】:

我得到了一个名为 FloorPlan 的公共类,并且有一个 private int[][] room,一个简单的 2D 数组,其中填充了零。 我应该创建一个名为

的方法
private boolean isEmptyRegion(int top, int bottom, int left, int right)

如果顶部和底部之间以及左右之间(包括边框)的矩形区域仅为零,则返回true;否则将返回false。我知道top <= bottomleft <= right,以及整个区域都将在房间的范围内。

谁能帮我构建for循环以通过二维数组的边界和给定的尺寸?

【问题讨论】:

  • 到目前为止你有什么?
  • @NiklasB。问题已得到解答,我真的要编辑我的帖子并回馈给你,但还是谢谢你! ^^

标签: java algorithm class oop


【解决方案1】:

您只需要迭代那些落入该矩形区域的 x 值,并且只迭代那些落入该矩形区域的 y 值。你可以这样做:

for(int i = top; i <= bottom; i++){
    for(int j = left; j <= right; j++){
        // checking logic here.
    }
}

【讨论】:

  • @あしンたいりン 没问题!
猜你喜欢
  • 1970-01-01
  • 2021-06-14
  • 1970-01-01
  • 2016-07-10
  • 1970-01-01
  • 2012-05-02
  • 1970-01-01
  • 1970-01-01
  • 2018-12-24
相关资源
最近更新 更多