java - 矩阵 : get value from given matrix

标签 java c++ c arrays

<分区>

可以按照下图打印矩阵值

The Matrix

最佳答案

据我了解,可以使用以下计算下一个条目的索引的辅助函数来解决该问题。语法是 C#,但在 Java 中应该类似,其中 mn 应该是各自的矩阵维度。这个想法是检查所需的主要方向是左下还是右上;如果到达矩阵的边缘(必须事先检查),则分别将其修改为向右和向下。该实现假设行和列的索引从零开始。

public struct Cell
{
    public int Row;
    public int Col;
}

public static Cell GetNext(Cell iCell)
{
    Cell Result;
    if (( iCell.Row + iCell.Col ) % 2 == 0)
    {
        if (iCell.Col == n - 1)
            Result = new Cell { Row = iCell.Row + 1, Col = n - 1 };
        else if (iCell.Row == 0)                    
            Result = new Cell { Row = 0, Col = iCell.Col + 1 };
        else
            Result = new Cell { Row = iCell.Row - 1, Col = iCell.Col + 1 };
    }
    else
    {
        if (iCell.Row == m - 1)
            Result = new Cell { Row = m - 1, Col = iCell.Col + 1 };
        else if (iCell.Col == 0)
            Result = new Cell { Row = iCell.Row + 1, Col = 0 };
        else
            Result = new Cell { Row = iCell.Row + 1, Col = iCell.Col - 1 };
    }
    return Result;
}

关于java - 矩阵 : get value from given matrix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38233852/

相关文章:

java - 解析 XML 时的问题

C++:是否可以将 extern "C"函数与普通函数区分开来?

c++ - 库链接错误 : undefined reference to _imp__

c - 跟踪内存 malloc/free 的简单 C 实现?

c - 为什么 strtof() 的这种行为会随着 stdlib.h 的变化而变化?

java - 尝试输入整数值时 System.in.read() 行为异常

java - 是否可以在 JavaFX 的表格内的组合框中显示不断变化的数组列表?

java - 如何在调用其他代码之前等待备份完成

c++ - Main.cpp 和随机数生成器 C++ 函数

在 C 中将 char hex 转换为 char dec