【贪心算法】334. 递增的三元子序列

334. 递增的三元子序列

解题思路

  • 找到的递增序列 不一定是连续的
  • 固定第一个数first 然后开始向后找第二个数second
  • 要求second 大于 first 找到之后 向后找第三个数third 找到 返回true
  • 如果third < first 那么更新first = third 重新找
  • 如果只是third > first 更新second
java 复制代码
 class Solution {
    public boolean increasingTriplet(int[] nums) {
        // 找到的递增序列 不一定是连续的
        // 固定第一个数first  然后开始向后找第二个数second
        // 要求second 大于 first 找到之后 向后找第三个数third 找到 返回true
        // 如果third < first 那么更新first = third 重新找
        // 如果只是third > first 更新second  

        int first = nums[0];
        int second = Integer.MAX_VALUE;
        for(int i = 1; i < nums.length; i++){
            if(nums[i] > second){
                // 说明找到了
                return true;
            }

            if(nums[i] < first){
                first = nums[i];
            }else if(nums[i] > first){
                second = nums[i];
            }
        }


        return false;
    }
}
相关推荐
故事和你919 分钟前
洛谷-【图论2-2】最短路3
开发语言·数据结构·c++·算法·动态规划·图论
yong999013 分钟前
基于VC++的图像匹配金字塔算法
c++·算法·计算机视觉
Rhi63718 分钟前
第 4 篇:用JWT与角色权限构筑安全的API防线
算法
fengfuyao98529 分钟前
基于MATLAB的ALOHA防碰撞、二进制搜索算法和帧时隙算法
人工智能·算法·matlab
yongui4783434 分钟前
光伏逆变器完整控制程序
算法
吃好睡好便好34 分钟前
在Matlab中绘制峰值图
开发语言·学习·算法·matlab·信息可视化
此生决int38 分钟前
算法从入门到精通——滑动窗口
c++·算法·蓝桥杯
兩尛40 分钟前
std::shared_mutex、std::mutex和std::recursive_mutex是什么锁
开发语言·c++·算法
木井巳1 小时前
【递归算法】不同路径Ⅲ
java·算法·leetcode·深度优先
想带你从多云到转晴1 小时前
07、数据结构与算法---优先级队列(堆)与排序
java·数据结构·算法