day68(1.27)——leetcode面试经典150

149. 直线上最多的点数

149. 直线上最多的点数

题目:

题解:

java 复制代码
class Solution {
    public int maxPoints(int[][] points) {
        if(points.length <= 2) {
            return points.length;
        }
        int n=points.length;
        int max_sum = 0;
        for(int i=0;i<points.length;i++) {
            for(int j=i+1;j<points.length;j++) {
                int count = 2;
                int x1 = points[i][0];
                int y1 = points[i][1];
                int x2 = points[j][0];
                int y2 = points[j][1];
                if (x1 == x2) {
                // 垂直线
                    for (int k = 0; k < n; k++) {
                        if (k != i && k != j && points[k][0] == x1) {
                            count++;
                        }
                    }
                } else if (y1 == y2) {
                    // 水平线
                    for (int k = 0; k < n; k++) {
                        if (k != i && k != j && points[k][1] == y1) {
                            count++;
                        }
                    }
                } else {
                    // 斜线
                    double k_val = 1.0 * (y2 - y1) / (x2 - x1);
                    double b_val = y1 - k_val * x1;
                    for (int k = 0; k < n; k++) {
                        if (k != i && k != j) {
                            double y_pred = k_val * points[k][0] + b_val;
                            if (Math.abs(y_pred - points[k][1]) < 1e-6) {
                                count++;
                            }
                        }
                    }
                }
                max_sum = Math.max(max_sum, count);
            }
        }
        return max_sum;
    }
}
相关推荐
笨鸟先飞的橘猫12 分钟前
slg游戏面试复盘
学习·面试
测试199832 分钟前
Jmeter接口自动化测试:Jmeter变量的使用
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·接口测试
letisgo51 小时前
JAVA 高级进阶05篇《Spring容器机制:Bean生命周期与三级缓存全解》
java·spring·面试·ioc·源码分析
ocean21031 小时前
2025-2026年Python大厂面试高频问题
python·面试·面试经验
爱从未走散1 小时前
面试八股题
java·面试·职场和发展
晚安日记wanna1 小时前
大文件分片上传的五层追问从 Blob 切片到秒传与弱网容错
前端·面试
晚安日记wanna2 小时前
只会答加索引MySQL 调优还能聊这 7 个点
数据库·面试
晚安日记wanna2 小时前
政务 Agent 面试真题五个得分点缺一就掉档
面试·架构
晚安日记wanna2 小时前
分布式和微服务差在哪从一次订单超时雪崩说起
面试·架构
ShineWinsu3 小时前
对于MySQL:索引的解析
linux·数据库·mysql·面试·笔试·索引·海量数据