当前位置: 首页 > news >正文

LeetCode|Day9|976. 三角形的最大周长|Python刷题笔记

LeetCode|Day9|976. 三角形的最大周长|Python刷题笔记

🗓️ 本文属于【LeetCode 简单题百日计划】系列
👉 点击查看系列总目录 >>


📌 题目简介

题号:976. 三角形的最大周长
难度:简单
题目链接:点击跳转


🧾 题目描述(简要)

给定一个正整数数组 nums,从中选出三个数,使得它们可以构成一个三角形,并返回其最大周长。如果无法构成任何三角形,返回 0。

示例:

输入:nums = [2,1,2]
输出:5
解释:可以组成三角形,周长是 2 + 2 + 1 = 5

💡 解法:排序 + 贪心判断三角形

class Solution:def largestPerimeter(self, nums: list[int]) -> int:nums.sort(reverse=True)for i in range(len(nums) - 2):if nums[i] < nums[i+1] + nums[i+2]:return nums[i] + nums[i+1] + nums[i+2]return 0

🧠 我的理解

  • 三角形的性质:任意两边之和 > 第三边
  • 所以我们排序后,从大到小遍历,寻找第一个满足三角形条件的三元组;
  • 因为我们从大到小遍历,遇到的第一个合法三角形就是最大周长。

📌 基础语法复习:

  • nums.sort(reverse=True):降序排序;
  • range(len(nums) - 2):防止越界访问 i+1i+2
  • return 表示函数提前结束并返回值。

📌 返回总目录:点我回目录

http://www.xdnf.cn/news/1113715.html

相关文章:

  • [论文阅读] 软件工程 | 首个德语软件工程情感分析黄金标准数据集:构建与价值解析
  • 开发语言的优劣势对比及主要应用领域分析
  • 【PTA数据结构 | C语言版】简单计算器
  • 深入解析Hadoop RPC:技术细节与推广应用
  • Namespace查看容器状态
  • 基于 SpringBoot 的 REST API 与 RPC 调用的统一封装
  • Maven项目没有Maven工具,IDEA没有识别到该项目是Maven项目怎么办?
  • monorepo 发布库 --- 发布
  • 在 Microsoft Edge 中,你可以使用 IE 兼容模式(Internet Explorer Mode)来运行 IE 内核 的网站。
  • DH(Denavit–Hartenberg)矩阵
  • 范畴论重构三生原理的具体案例?
  • AI(学习笔记第五课) 使用langchain进行AI开发 load documents(web)
  • python基础知识pip配置pip.conf文件
  • 开发语言中关于面向对象和面向过程的笔记
  • python 虚拟环境 Anaconda Miniconda
  • AI 编程工具 Claude Code 实战
  • MSVCP*.dll、vcruntime*.dll缺失或损坏,以及.NET Framework相关问题,解决办法
  • .NET + WPF框架开发聊天、网盘、信息发布、视频播放功能
  • 以太坊应用开发基础:从理论到实战的完整指南
  • [Subtitle Edit] 字幕格式处理 | .Net依赖管理(NuGet)
  • 【机器学习】反向传播如何求梯度(公式推导)
  • 前端面试十二之vue3基础
  • Vue Router 完全指南:从入门到实战,高效管理前端路由
  • 一文读懂现代卷积神经网络—使用块的网络(VGG)
  • 一扇门铃,万向感应——用 eventfd 实现零延迟通信
  • 【Qt开发】Qt的背景介绍(一)
  • 一文打通MySQL任督二脉(事务、索引、锁、SQL优化、分库分表)
  • Linux驱动开发2:字符设备驱动
  • [特殊字符] Python自动化办公 | 3步实现Excel数据清洗与可视化,效率提升300%
  • Excel的学习