美文网首页
在行列都排好序的矩阵中找数

在行列都排好序的矩阵中找数

作者: stoneyang94 | 来源:发表于2018-08-27 09:17 被阅读0次

题目描述

给定一个有N×M的整型矩阵matrix和一个整数K,matrix每行每列都排好序了。
实现一个函数,判断K是否在matrix中。

分析

  1. 从右上角的数开始寻找
  2. 右上角比k小,说明k不可能在第一行了,看下面的行
  3. 右上角比k大,说明k不可能在最后一列,看左边的列

代码实现

public class FindNumInSortMatrix {
    public static int[] find(int[][] matrix, int num) {
        // 1-----------------------------------------------------
        int a = 0;// 行
        int b = matrix[0].length - 1;// 列
        while (a < matrix.length && b > -1) {
            if (matrix[a][b] == num) {
                return new int[] { a, b };
            } else if (matrix[a][b] < num) { // 2-------------------------
                a++;// 往下一行走
            } else { // 3-----------------------------------------------------
                b--;// 往该列左走
            }
        }
        return new int[] { -1, -1 };
    }

    public static void main(String[] args) {
        int[][] matrix = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
        int num1 = 5;
        int arr1[] = find(matrix, num1);
        System.out.println(num1 + "在" + (arr1[0] + 1) +"行" + (arr1[1] + 1) + "列");
        int num2 = 7;
        int arr2[] = find(matrix, num2);
        System.out.println(num2 + "在" + (arr2[0] + 1) +"行" + (arr2[1] + 1) + "列");
    }
}
测试结果

相关文章

  • 在行列都排好序的矩阵中找数

    题目描述 给定一个有N×M的整型矩阵matrix和一个整数K,matrix每行每列都排好序了。实现一个函数,判断K...

  • 在行列都排好序的矩阵中找数

    题目:给定一个有N*M的整型矩阵matrix和一个整数K, matrix的每一行和每一列都是排好序的。 实现一个函...

  • 栈、队列、矩阵、链表问题(二)

    目录 “之”字形打印 在行列都排好序的矩阵中找数 打印两个有序链表的公共部分 判断一个链表是否为回文结构 将单向链...

  • 3.矩阵和列表

    ①变换向量在数据库或矩阵中的顺序 将第四列gene向量变成第一列 矩阵创建,查看矩阵行列数,矩阵取子集,矩阵行列置...

  • P8矩阵

    矩阵 行列式 行列式可以计算方程组 用矩阵表示的便利性 数表形式 矩阵 行列式矩阵对比 行列式是一个数,矩阵是...

  • 2_18有序矩阵查找

    现在有一个行和列都排好序的矩阵,请设计一个高效算法,快速查找矩阵中是否含有值x。 给定一个int矩阵mat,同时给...

  • 高等代数理论基础28:矩阵乘积的行列式与秩

    矩阵乘积的行列式与秩 乘积的行列式 定理:设A,B是数域P上的两个矩阵,则 即矩阵乘积的行列式等于它的因子的行列式...

  • 图形学中矩阵的行主序和列主序

    矩阵的排列 矩阵在数学中的定义是 m行n列的数阵 而在图形学中,有行主序和列主序两种排列方式,行主序和标准矩阵是一...

  • Pytorch之线性代数

    矩阵 矩阵初始化 矩阵元素运算 矩阵的乘法 矩阵的转置 矩阵对应列行的最大值,最小值,和 矩阵的其他操作:行列数、...

  • test

    [TOC] 创建矩阵(采用ndarray对象) 获取矩阵行数列数(二维情况) 矩阵的截取 按行列截取 按条件截取 ...

网友评论

      本文标题:在行列都排好序的矩阵中找数

      本文链接:https://www.haomeiwen.com/subject/kjrqpftx.html