力扣每日一题-查询网格图中每一列的宽度-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;
    }
}
相关推荐
沐浴露z几秒前
详解JDK21新特性【虚拟线程】
java·开发语言·jvm
艾莉丝努力练剑13 分钟前
【C++:红黑树】深入理解红黑树的平衡之道:从原理、变色、旋转到完整实现代码
大数据·开发语言·c++·人工智能·红黑树
No0d1es21 分钟前
电子学会青少年软件编程(C/C++)1级等级考试真题试卷(2025年9月)
java·c语言·c++·青少年编程·电子学会·真题·一级
l1t26 分钟前
利用DeepSeek优化SQLite求解数独SQL用于DuckDB
开发语言·数据库·sql·sqlite·duckdb
_OP_CHEN28 分钟前
C++进阶:(七)红黑树深度解析与 C++ 实现
开发语言·数据结构·c++·stl·红黑树·红黑树的旋转·红黑树的平衡调整
小O的算法实验室36 分钟前
2025年TRE SCI1区TOP,随机环境下无人机应急医疗接送与配送的先进混合方法,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
9号达人42 分钟前
普通公司对账系统的现实困境与解决方案
java·后端·面试
硅农深芯42 分钟前
如何使用ptqt5实现进度条的动态显示
开发语言·python·qt
超级苦力怕44 分钟前
Java 为何 long a = 999999999 能过;long a = 9999999999 报错?一文讲透“宽化转换”
java
佐杰1 小时前
Jenkins使用指南1
java·运维·jenkins