news 2026/3/7 23:23:23

力扣刷题:有效的正方形

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣刷题:有效的正方形

题目:
给定2D空间中四个点的坐标 p1, p2, p3 和 p4,如果这四个点构成一个正方形,则返回 true 。

点的坐标 pi 表示为 [xi, yi] 。 输入没有任何顺序 。

一个 有效的正方形 有四条等边和四个等角(90度角)。

示例 1:

输入: p1 = [0,0], p2 = [1,1], p3 = [1,0], p4 = [0,1]
输出: true

示例 2:

输入:p1 = [0,0], p2 = [1,1], p3 = [1,0], p4 = [0,12]
输出:false

示例 3:

输入:p1 = [1,0], p2 = [-1,0], p3 = [0,1], p4 = [0,-1]
输出:true

解析:
判断是不是正方形只需根据四条边是否相等,两条对角线是否相等即可

具体代码

/** * @param {number[]} p1 * @param {number[]} p2 * @param {number[]} p3 * @param {number[]} p4 * @return {boolean} */varvalidSquare=function(p1,p2,p3,p4){letset=newSet()functiongetLength(p1,p2){letx=p1[0]-p2[0]lety=p1[1]-p2[1]letres=x*x+y*y set.add(res)}getLength(p1,p2)getLength(p1,p3)getLength(p1,p4)getLength(p2,p3)getLength(p2,p4)getLength(p3,p4)letarr=Array.from(set)if(arr.length===2&&arr[0]!==0&&arr[1]!==0){returntrue}else{returnfalse}};
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/4 3:11:19

Spring Boot 服务迁移到 Docker + Kubernetes实践过程

从一个正确的 Dockerfile 开始 性能优化,第一步永远不是 JVM 参数,而是 镜像构建方式。 生产级 Dockerfile 示例 # -------- 构建阶段 -------- FROM maven:3.9.4-eclipse-temurin-17 AS build WORKDIR /app# 先拷贝 pom.xml,用于依赖缓存 COPY pom.xml . RUN mvn -q -e …

作者头像 李华
网站建设 2026/2/28 6:19:28

5步掌握KrillinAI马来语语音处理:从零到企业级实战指南

想要将中文视频快速转化为马来语版本?KrillinAI作为基于AI大模型的视频翻译配音工具,通过深度整合语音识别(ASR)、机器翻译(MT)和文本转语音(TTS)三大核心技术,让马来语语…

作者头像 李华
网站建设 2026/2/22 6:47:56

20、Java 单元测试:从基础到高级技巧

Java 单元测试:从基础到高级技巧 在 Java 开发中,单元测试是保证代码质量和稳定性的重要手段。本文将深入探讨 Java 单元测试中的多个关键主题,包括消除冗余、批量自动化测试、异常处理以及模拟对象的使用。 1. 消除测试代码中的冗余 在测试类中,每个 testXXXXX() 方法…

作者头像 李华
网站建设 2026/3/2 13:47:46

Dify镜像集成Nginx实现反向代理与负载均衡

Dify镜像集成Nginx实现反向代理与负载均衡 在企业级AI应用快速落地的今天,如何让一个基于大语言模型(LLM)的开发平台既具备高效的可视化编排能力,又能稳定支撑高并发访问?这不仅是架构师关心的问题,也是每一…

作者头像 李华
网站建设 2026/3/4 19:40:08

uniapp+vue基于微信小程序的校园警务师生出入登记系统 论文

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/3/6 5:50:45

uniapp+vue校园教室预约 调课申请管理APP 微信小程序

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华