https://leetcode-cn.com/problems/increasing-triplet-subsequence/submissions/
- 跟300题差不多
public boolean increasingTriplet(int[] nums) {if (nums == null || nums.length < 3) {return false;}int[] ends = new int[3];ends[0] = nums[0];int right = 0; // 0..right有效区int l = 0;int r = 0;int m = 0;for (int i = 1; i < nums.length; i++) {l = 0;r = right;while (l <= r) {m = (l + r) >> 1;if (nums[i] > ends[m]) {l = m + 1;} else {r = m - 1;}}right = Math.max(right, l);if (right > 1) {return true;}ends[l] = nums[i];}return false;}
