7. Leetcode 611. 有效三角形的个数 (数组-双向双指针)
给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。示例 1:输入: [2,2,3,4]
输出: 3
解释:
有效的组合是:
2,3,4 (使用第一个 2)
2,3,4 (使用第二个 2)
2,2,3思路:1. 数组排序,便于后序的处理
2. 固定最长的边c,然后采用双指针在其左侧寻找合适的 a、b:1) a从最左侧开始(nums[0])2) b从最右侧开始(nums[i-1])3. 如果nums[left] + nums[right] > nums[i],说明[left,right]、 [left+1,right]...[right-1,right] 均满足条件,以 nums[right] 为中间边的情况已全部考虑过,然后 right -= 14. 如果nums[left] + nums[right] <= nums[i],两边之和太小,需要增大,left += 1class Solution:def triangleNumber(self, nums: List[int]) -> int:# 1. 排序nums.sort()# 2. 遍历count = 0for i in range(2, len(nums)):left = 0right = i - 1while left < right:if nums[left] + nums[right] > nums[i]:count += (right - left)right -= 1else:left += 1return count
7. Leetcode 611. 有效三角形的个数 (数组-双向双指针)相关推荐
- Leetcode 611 有效三角形的个数
611. 有效三角形的个数 难度中等321收藏分享切换为英文接收动态反馈 给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数. 示例 1: 输入: [2,2,3,4] 输出 ...
- LeetCode 611. 有效三角形的个数(双指针)
1. 题目 给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数. 示例 1: 输入: [2,2,3,4] 输出: 3 解释: 有效的组合是: 2,3,4 (使用第一个 2) ...
- 判断三个数是否能构成三角形_【内含干货】611. 有效三角形的个数
点击蓝色"力扣加加"关注我哟 加个"星标",带你揭开算法的神秘面纱! ❝ 这是力扣加加第「9」篇原创文章 ❞ 题目地址(611. 有效三角形的个数) https ...
- 能否构成三角形的条件代码_leetcode No.611 有效三角形的个数
题目链接: 611. 有效三角形的个数 - 力扣(LeetCode)leetcode-cn.com 题目描述: 给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数. 示例 ...
- 611. 有效三角形的个数
611. 有效三角形的个数 给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数. 示例 1: 输入: [2,2,3,4] 输出: 3 解释: 有效的组合是: 2,3,4 ( ...
- 611.有效三角形的个数
611.有效三角形的个数 贴个题目: 贴个示例: 解题思路: 这道题目,涉及了一个初二的数学知识: 三角形的两边之和大于第三边: 即:a+b>c 也就是这一道题,我们需要做的是,使用两条边,找到 ...
- leetcode 611. Valid Triangle Number | 611. 有效三角形的个数(Java)
题目 https://leetcode.com/problems/valid-triangle-number/ 题解 a, b, c 三指针,无剪枝优化,O(n^3),居然通过了. 思路是,用 a, ...
- 6. Leetcode 11. 盛最多水的容器 (数组-双向双指针)
给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) .找出其中的两条线 ...
- 4. Leetcode 18. 四数之和 (数组-双向双指针)
给你一个由 n 个整数组成的数组 nums ,和一个目标值 target .请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] ( ...
最新文章
- phxpaxos编译示例
- 使用google云(GCP)二次利用安装kali Linux(kali browser)
- 8.17——继续熟悉linux的命令行
- 思考如何保证线程并行的数据安全性
- Java多线程(join方法)
- 查询服务器硬件配置的命令
- python笔记之ArcPy简介
- 利用QGIS免费批量获取Google、Bing等高分辨率卫星影像
- t32 emulation debug port failed
- python中with open as f什么意思_Python中 with open(file_abs,'r') as f: 的用法以及意义
- 直播系统开发,直播平台源码切忌一成不变
- 用Python实现表白代码 抖音最火的整蛊表白小程序如何做出来的
- vue 视频 时间进度条组件-使用npm组件
- 硬盘10K和15K有什么区别?
- python改变数组形状_NumPy数组的变形(改变数组形状)
- 继承属性inh和综合属性syn的作用
- bios设置raid启动模式Linux,华硕主板BIOS里哪项是开启RAID方式?
- 快过年了别着急玩耍,学会指针轻松一整年的学习
- 滴滴技术牛逼吗?看它开源了哪些有意思的项目
- Bat批处理方式发邮件