力扣每日一题-查询网格图中每一列的宽度-2024.4.27

力扣题目:查询网格图中每一列的宽度

题目链接:2639.查询网格图中每一列的宽度

题目描述

代码思路

双层for循环遍历整个矩阵容易想到,只要能想到使用整数转字符串的技巧("" + 字符串),即可完成题目

代码纯享版

java 复制代码
class Solution {
    public int[] findColumnWidth(int[][] grid) {
        int[] ans = new int[grid[0].length]; 
        for(int i = 0; i < grid[0].length; i++){
            int max = 0;
            for(int j = 0; j < grid.length; j++){
                String str = "" + grid[j][i];
                
                max = Math.max(max, str.length());
            }
            ans[i] = max;
        }
         return ans;
    }
}

代码逐行解析版

java 复制代码
class Solution {
    public int[] findColumnWidth(int[][] grid) {
        int[] ans = new int[grid[0].length]; //创建ans整数数据,记录每一列的宽度,即字符串长度最大值
        for(int i = 0; i < grid[0].length; i++){ 
            int max = 0; //记录最大值
            for(int j = 0; j < grid.length; j++){
                String str = "" + grid[j][i]; //将整数变成字符串,方便用字符串的length()方法直接计算字符串长度
                
                max = Math.max(max, str.length()); //记录最大值
            }
            ans[i] = max; //添加最大值
        }
         return ans;
    }
}
相关推荐
csbysj20201 分钟前
jQuery 删除元素
开发语言
xxy-mm4 分钟前
Javascript 中的继承
开发语言·javascript·ecmascript
quikai19812 小时前
python练习第二组
开发语言·python
AI视觉网奇2 小时前
Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr
开发语言·c++·算法
ghie90902 小时前
ECG波形检查与分析系统
算法
智者知已应修善业3 小时前
【输入两个数字,判断两数相乘是否等于各自逆序数相乘】2023-10-24
c语言·c++·经验分享·笔记·算法·1024程序员节
wjs20243 小时前
并查集快速合并
开发语言
free-elcmacom3 小时前
MATLAB与高等数学<1>一道曲面积分题的几何直观
开发语言·数学建模·matlab·高等数学
LaoZhangGong1233 小时前
深度学习uip中的“psock.c和psock.h”
c语言·开发语言
Tony Bai3 小时前
Go 安全新提案:runtime/secret 能否终结密钥残留的噩梦?
java·开发语言·jvm·安全·golang