联系我
×

1380. 矩阵中的幸运数

查看原题

在这里插入图片描述

解题思路

  • 先求出每一行的最小值存到数组min,再求出每一列的最大值存到数组max;
  • 双重循环遍历每一个元素,判断是否同时在min和max中,如果同时在则是幸运数

代码

/**
 * @param {number[][]} matrix
 * @return {number[]}
 */
var luckyNumbers  = function(matrix) {
	const m = matrix.length;
	const n = matrix[0].length;
	let result = [];
	let min = [];
	let max = [];
	for(let i = 0; i < m;i++) {
		min.push(Math.min(...matrix[i])); //一行的最小值	
	}
	
	for(let j = 0; j < n; j++) {
		let temp  = 0;
		for(let i = 0; i < m; i++) {
			if(matrix[i][j] > temp){
				temp = matrix[i][j];
			}
		}
		max.push(temp);
	}
	for(let i = 0; i < m; i++) {
		for(let j =0; j < n; j++){
			if(min.indexOf(matrix[i][j]) !== -1 && max.indexOf(matrix[i][j]) !==-1) {
				result.push(matrix[i][j]);
			}
		}
	}
	return result;
};

在这里插入图片描述

posted @ 2022-02-15 10:28  .筱  阅读(42)  评论(0)    收藏  举报