力扣每日一题-查询网格图中每一列的宽度-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;
    }
}
相关推荐
ohnoooo9几秒前
251225 算法2 期末练习
算法·动态规划·图论
秋邱5 分钟前
Java面向对象进阶实战:用工厂模式+策略模式优化支付系统
java·bash·策略模式
leiming69 分钟前
c++ 容器 queue
开发语言·c++
车队老哥记录生活11 分钟前
强化学习 RL 基础 3:随机近似方法 | 梯度下降
人工智能·算法·机器学习·强化学习
CSDN_RTKLIB13 分钟前
【类定义系列三】内联函数进阶
开发语言·c++
heartbeat..20 分钟前
网络通信核心知识全解析:模型、协议与 TCP 机制
java·网络·网络协议·tcp/ip
闲看云起20 分钟前
LeetCode-day2:字母异位词分组分析
算法·leetcode·职场和发展
北京流年25 分钟前
执行clang --version报错说由于找不到 libgcc_s_seh-1.dll和 找不到 libstdc++-6.dll 这两个文件
开发语言·c++
weixin_4407305034 分钟前
Java基础学习day01
java·开发语言·学习
军军君0144 分钟前
Three.js基础功能学习一:环境资源及基础知识
开发语言·javascript·学习·3d·前端框架·threejs·三维