LeetCode 334. 递增的三元子序列(C++)
admin
2024-05-12 18:32:07
0

····思路:
1.对于任何位置,只需要满足i < j < k ,使得 nums[i] < nums[j] < nums[k];所以只需要记录每个元素的左边最小值leftMin[i]和右边最大值rightMax[i],满足条件leftMin[i-1] 2.为了较低空间复杂度,采用双指针遍历一次:
····策略:贪心算法
对于一个low1 mid1 序列,num[i]无法构成的序列对于更小的low2 mid2可能构成;所以要尽量将low mid 压缩到最低,可以发现:更新low的时候,满足条件的num[i]>mid判断不受low影响;如果更新mid,更不受影响了,因为是从左向右遍历的;
首先,如果对于一个序列low mid 只有当num[i]>mid 就构成了升序序列;
1.如果num[i]mid时,也一定大于前面的low
2.如果num[i]>low且num[i] 3.如果num[i]>mid.则满足条件,输出;
····原题链接:https://leetcode.cn/problems/increasing-triplet-subsequence/?favorite=2ckc81c

1.题目如下:

给你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列。

如果存在这样的三元组下标 (i, j, k) 且满足 i < j < k ,使得 nums[i] < nums[j] < nums[k] ,返回 true ;否则,返回 false 。

示例 1:

输入:nums = [1,2,3,4,5]
输出:true

解释:任何 i < j < k 的三元组都满足题意

示例 2:

输入:nums = [5,4,3,2,1]
输出:false

解释:不存在满足题意的三元组

示例 3:

输入:nums = [2,1,5,0,4,6]
输出:true

解释:三元组 (3, 4, 5) 满足题意,因为 nums[3] == 0 < nums[4] == 4 < nums[5] == 6

提示:

1 <= nums.length <= 5 * 105
-231 <= nums[i] <= 231 - 1

进阶:你能实现时间复杂度为 O(n) ,空间复杂度为 O(1) 的解决方案吗?

2.代码如下:

class Solution {
public:
//思路一:数组遍历 空间复杂度O(n)
/*用两个数组,来记录每一个元素未知的左边最小值和右边最大值;对于nums[i],如果由min[i-1]nums[i],则满足条件
*/
/*bool increasingTriplet(vector& nums) {vector leftMin(nums.size(),0);vector rightMax(nums.size(),0);int max1=INT_MIN;int min1=INT_MAX;for(int i=0;i=0;i--){max1=max1>nums[i]?max1:nums[i];rightMax[i]=max1;}for(int i=1;ileftMin[i-1] && nums[i]mid判断不受low影响;如果更新mid,更不受影响了,因为是从左向右遍历的贪心策略:首先对于一个序列 low mid首先,如果对于一个序列low mid  只有当num[i]>mid 就构成了升序序列;1.如果num[i]mid时,也一定大于前面的low2.如果num[i]>low且num[i]mid.则满足条件,输出;*/bool increasingTriplet(vector& nums) {int low=INT_MAX;int mid=INT_MAX;if(nums.size()<3){return false;}for(int i=0;i//满足条件if (nums[i]>mid) {return true;//更新mid} else if(nums[i]>low) {mid=nums[i];//更新low} else {low=nums[i];}}return false;}};

相关内容

热门资讯

哪些标准可以判断黄金回收机构的... 近年来随着黄金资产配置需求的提升,不同群体的黄金变现需求也逐渐增多:45-70岁的中老年投资者早年入...
今年2000亿元超长期特别国债... 按照党中央和国务院决策部署,优化实施“两新”政策,2026年安排2000亿元超长期特别国债资金支持设...
桶装啤酒设备厂家梳理:扎啤桶清... 导语:在精酿与工业化啤酒生产并行发展的背景下,桶装啤酒设备的选型直接影响酒厂后段包装效率与产品保鲜质...
价格倒挂、经销商每瓶亏近90元... 来源:国际金融报 7月1日晚间,红花郎下发通知,即日起暂停53度2024版红花郎·15发货,恢复时间...
茅台还是那个茅台,顶流资本用真... 2026年上半年的A股,是属于硬科技的狂欢。 然而,就在市场目光全部被科技新贵吸引之时,逆势加仓茅台...
【喜报】数智赋能健康 实力书写... 6月23日-25日,第二届医疗行业数字创新大会暨第八届智慧医疗创新大赛全国总决赛在湖南长沙举行。本届...
从卖设备到卖大脑,一家装备企业... 你也许从未听过伊之密这个名字,但你的手机外壳、运动鞋底、矿泉水瓶,甚至是哪吒手办,大概率就出自伊之密...
打破同业壁垒!两大非上市券商抱... (来源:中访网财见) 财富管理转型,是两家券商不约而同押注的核心赛道,也是本次合作的重要契合点。 ...
原创 苏... 《2026胡润全球独角兽榜》列出了全球成立于2000年之后、价值10亿美元以上的非上市公司,苏州16...
五道口金融学院院长焦捷:AI重... 当前,地缘政治冲突频发叠加新一轮科技革命,全球金融体系底层逻辑发生深刻转变,金融战略属性持续凸显,甚...
杨赫:绿色金融需从“标签识别”... 记者 胡艳明 2026年6月30日,金融街青年派活动在北京金融科技中心举行,百余名金融青年、行业专家...
罚款不断、上市屡败、估值腰斩,... 素有跨境电商出海“神话”之称的希音(SHEIN),正遭遇欧美市场的合规寒流。 据环球时报,2026年...
全市重大项目建设和产业转型升级... 7月3日,金融支持重庆高质量发展大会在渝举行。会上,重庆一次性发布了基金丛林清单,产业、科技创新、基...
王健林,再卖一座万达广场 万达商业推进资产处置工作,有了新进展。 近日,湛江开发区万达广场投资有限公司发生工商变更。天眼查AP...
2900亿市值巨头涨停 上证报中国证券网讯 7月3日早盘,创业板指拉升涨逾2.00%,算力硬件等方向涨幅居前,PCB概念震荡...
今夜,69家A股公司提示风险 7月3日晚间,69家A股公司发布股票交易异常波动公告或股票交易风险提示公告,分别是ST龙大、ST文峰...
原创 生... 生命科学行业迈入黄金十年:行业增长逻辑与未来趋势解读 1、生命科学:多学科交叉驱动的探索前沿 生命...
7月15日正式下线!豆包、千问... 7月4日,字节跳动旗下豆包与阿里巴巴旗下千问两大头部大模型平台几乎同步向用户推送通知,宣布将于今年7...
和讯文太彬:下周行情及机会前瞻... 双创指数继续调整,收出周阴线下周走势怎么看,以及当下的板块如何轮动,和讯文太彬分析,先说说双创指数,...
原创 帮... 根据帮主郑重7月4日晚间直播整理: 最后几分钟,跟大家讲透一句最朴实的股市真相:炒股最大的风险,从来...