数组列表中的最大距离

求解代码

java 复制代码
        public int maxDistance(List<List<Integer>> arrays) {
            // 初始化最小值为第一个数组的第一个元素(升序数组的最小值)
            int min = arrays.get(0).get(0);
            // 初始化最大值为第一个数组的最后一个元素(升序数组的最大值)
            int max = arrays.get(0).get(arrays.get(0).size() - 1);

            int res = 0;

            for (int i = 1; i < arrays.size(); i++) {
                // 计算当前数组的最大值 与 之前所有数组最小值 的差,更新最大距离
                res = Math.max(res, Math.abs(arrays.get(i).get(arrays.get(i).size() - 1) - min));
                // 计算之前所有数组最大值 与 当前数组最小值 的差,更新最大距离
                res = Math.max(res, Math.abs(max - arrays.get(i).get(0)));
                // 更新全局最小值
                min = Math.min(min, arrays.get(i).get(0));
                // 更新全局最大值
                max = Math.max(max, arrays.get(i).get(arrays.get(i).size() - 1));
            }
            return res;
        }
相关推荐
Coder_Boy_15 分钟前
Java(Spring AI)传统项目智能化改造——商业化真实案例(含完整核心代码+落地指南)
java·人工智能·spring boot·spring·微服务
五阿哥永琪29 分钟前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言
chilavert3182 小时前
技术演进中的开发沉思-371:final 关键字(中)
java·前端·数据库
海边的Kurisu2 小时前
Mybatis-Plus | 只做增强不做改变——为简化开发而生
java·开发语言·mybatis
识君啊2 小时前
Java 二叉树从入门到精通-遍历与递归详解
java·算法·leetcode·二叉树·深度优先·广度优先
daidaidaiyu2 小时前
一文学习 Spring AOP 源码全过程
java·spring
毕设源码-郭学长3 小时前
【开题答辩全过程】以 高校人事管理系统 为例,包含答辩的问题和答案
java
Zhu_S W3 小时前
Kubernetes (K8s) 完全指南:Java 开发者的容器编排实践
java·容器·kubernetes
罗超驿3 小时前
15. Java异常处理全解析:从底层原理到实战避坑指南
java·异常处理·开发实战·编程技巧·自定义异常·try-catch
柒.梧.4 小时前
吃透Spring Bean:生命周期、单例特性、作用域及扩展方式
java·后端·spring