首页 > 其他分享 >二维矩阵的行、列、斜线特征(二维数组)

二维矩阵的行、列、斜线特征(二维数组)

时间:2024-09-23 12:48:44浏览次数:3  
标签:格子 斜线 元素 矩阵 二维 等于

1. 行特征

二维 n*m 矩阵,用 x[i][j] 表示第 i 行第 j 列的元素。同一行的元素的 i 值是相同的。

例如,上图中绿色格子的数组元素分别是 x[4][1],x[4][2],x[4][3],x[4][4],x[4][5],x[4][6]。

2. 列特征

二维 n*m 矩阵,用 x[i][j] 表示第 i 行第 j 列的元素。同一列的元素的 j 值是相同的。

例如,上图中橙色格子的数组元素分别是 x[1][5],x[2][5],x[3][5],x[4][5],x[5][5]。

3. 左下到右上斜线特征

二维 n*m 矩阵,用 x[i][j] 表示第 i 行第 j 列的元素。矩阵包含了很多条从左下角到右上角方向的斜线,每一条斜线的特点是 i+j 相等。

  1. 上图每一条斜线都标注了一种颜色,每一种颜色的 i+j 都是一个相同的值;

  2. 不同的斜线(颜色) i+j 互不相等。

  3. 最左上角的格子 和 最右下角的格子 是特殊情况,它们所处的斜线只有 1 个格子。

  4. i+j 的取值范围是从 1 到 n+m, 1 出现在最左上角的这一列,n+m 出现在最右下角的这一列

从 x[a][b] 出发找同一斜线上的其它元素,可以找 x[a+1][b-1] 和 x[a-1][b+1] ,行列坐标一个加一,另外一个减一,和就维持不变。当行号等于 1 或者等于 n 或者列号等于 1 或者等于 m 的时候,表示一个方向到了矩阵的边缘位置。

4. 左上到右下斜线特征

二维 n*m 矩阵,用 x[i][j] 表示第 i 行第 j 列的元素。矩阵包含了很多条从左上角到右下角方向的斜线,每一条斜线的特点是 i-j 相等。

  1. 上图每一条斜线都标注了一种颜色,每一种颜色的 i-j 都是一个相同的值;

  2. 不同的斜线(颜色) i-j 互不相等。

  3. 最左下角的格子 和 最右上角的格子 是特殊情况,它们所处的斜线只有 1 个格子。

  4. i-j 的取值范围是从 n-1 到 1-m,0 值对应从最左上角格子出发的这一斜线;n-1 对应的是最从左下角格子出发的斜线;1-m 对应的是从最右上角格子出发的斜线。

  5. 往上走,i-j 的值越来越小;往下走 i-j 的值越来越大

从 x[a][b] 出发找同一斜线上的其它元素,可以找 x[a+1][b+1] 和 x[a-1][b-1] ,行列坐标同时加一或者二同时减一,差维持不变。当行号等于 1 或者等于 n 或者列号等于 1 或者等于 m 的时候,表示一个方向到了矩阵的边缘位置。

标签:格子,斜线,元素,矩阵,二维,等于
From: https://blog.csdn.net/dazys/article/details/142455263

相关文章

  • c语言 一/二维数组
    菜鸟学习笔记 欢迎大佬指教一维数组:  声明:int arr[10];//声明一个一位数组可以存放10个(int)整形的数组计算该数组的大小:sizeof(arr) 会返回数组 a 占用的总字节数。sizeof(int) 会返回单个 int 类型变量占用的字节数。   我们使用总字节数/单个字节数......
  • Mathtype公式相关:在mathtype中添加任意维数矩阵的方法以及矩阵中省略号的问题;输入空格
    一、在mathtype中添加任意维数矩阵的方法以及矩阵中省略号的问题使用mathtype创建任意维数的矩阵:打开mathtype后可点击矩阵工具栏,再点击右下角的图形,具体情况如下图所示。点击之后会弹出一个对话框如下图所示,可在行列处输入自己想要的行数和列数。使用此方法创建的矩阵都是......
  • matlab绘制二维云图,划分区域,并显示每个区域的均值
    绘制成图如下:代码如下:%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%创建绘图的数据ax=0;bx=1;ay=0;by=1;nx=100;%数据的x轴点数ny=100;%数据的y轴点数hx=(bx-ax)/(nx-1);hy=(by-ay)/(ny-1);X=ax:hx:bx;Y=ay:hy:by;data=zeros(ny,nx......
  • PHP利用endroid/qr-code生成个性二维码
    需先安装拓展库composerrequireendroid/qr-codeuseEndroid\QrCode\Color\Color;useEndroid\QrCode\Encoding\Encoding;useEndroid\QrCode\ErrorCorrectionLevel\ErrorCorrectionLevelHigh;useEndroid\QrCode\QrCode;useEndroid\QrCode\Label\Label;use......
  • 力扣最热一百题——搜索二维矩阵
    目录题目链接:240.搜索二维矩阵II-力扣(LeetCode)题目描述解法一:暴力不解释Java写法:运行时间C++写法:运行时间时间复杂度以及空间复杂度 解法二:利用自带的大小关系进行Z型走位Java写法:运行时间C++写法运行时间时间复杂度以及空间复杂度总结题目链接:240.......
  • 获取支付链接转化为二维码
    链接转为二维码,需要安装vue-qrcodenpminstallvue-qrcode装二维码的容器:<divclass="amount"v-show="amount"><divclass="amount_text">金额:{{selected.price}}元</div><divclass="amount_img&......
  • Leetcode 378. 有序矩阵中第 K 小的元素
    1.题目基本信息1.1.题目描述给你一个nxn矩阵matrix,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素。请注意,它是排序后的第k小元素,而不是第k个不同的元素。你必须找到一个内存复杂度优于O(n^2)的解决方案。1.2.题目地址https://leetcode.cn/problem......
  • 代码随想录算法训练营第一天 | 209. 长度最小的子数组 59. 螺旋矩阵 58. 区间和 Java
    209.长度最小的子数组题目链接:https://leetcode.cn/problems/minimum-size-subarray-sum/description/解题思路思路1:暴力解法通过两个for循环,找出所有的可能的区间,并比较出最小区间思路2:滑动窗口因为需要找出的是连续的一个子数组,所以可以模拟一个从左到右滑动的一个......
  • [Java原创精品]基于Springboot+Vue的座位预约系统、自习室预约管理、微信二维码扫描模
    项目提供:完整源码+数据库sql文件+数据库表Excel文件1、项目功能描述本项目为双角色,用户和管理员,用户使用前台,管理员使用后台。1.1注册注册功能:填写用户名、密码进行注册。(“我已阅读同意《隐私政策》和《服务条款》”没有做后续,只是单纯有这样一行文字做模拟)1.2......
  • java的二维数组
    二维数组的初始化 二维数组的进行for循环时的判断条件怎么确定的呢?  因为在二维数组是特殊的一维数组,c语言中二维数组首元素的代表的是地址,而首元素代表的是一组一维数组,计算首元素的长度也就是计算二维数组的行下标为0的一维数组的长度所以判断数组名的长度也就是判断......