Last updated 5 years ago
Was this helpful?
要想有一个递增的数列,至少前面有两个数字(最小的,第二小的),来判断第三个数字
可以维护两个值:最小值和倒数第二小的值;但是怎么满足,最小,第二小,最大这个顺序呢?我们可以用 if - else if - else 这个条件判断来实现
public class Solution { public boolean increasingTriplet(int[] nums) { if (nums == null || nums.length < 3) { return false; } int smallest = Integer.MAX_VALUE; int smaller = Integer.MAX_VALUE; for (Integer num : nums) { if (num <= smallest) { smallest = num; } else if (num <= smaller) { smaller = num; } else { return true; } } return false; } }
维护那两个元素的时候,要把他们事先设置为最大。