Files
2020-08-07 17:06:53 +08:00

47 lines
1.3 KiB
Markdown
Executable File
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# [456. 132 Pattern](https://leetcode.com/problems/132-pattern/)
## 题目
Given a sequence of n integers a1, a2, ..., an, a 132 pattern is a subsequence a**i**, a**j**, a**k** such that **i** < **j** < **k** and a**i** < a**k** < a**j**. Design an algorithm that takes a list of n numbers as input and checks whether there is a 132 pattern in the list.
**Note:** n will be less than 15,000.
**Example 1:**
Input: [1, 2, 3, 4]
Output: False
Explanation: There is no 132 pattern in the sequence.
**Example 2:**
Input: [3, 1, 4, 2]
Output: True
Explanation: There is a 132 pattern in the sequence: [1, 4, 2].
**Example 3:**
Input: [-1, 3, 2, 0]
Output: True
Explanation: There are three 132 patterns in the sequence: [-1, 3, 2], [-1, 3, 0] and [-1, 2, 0].
## 题目大意
给定一个整数序列a1, a2, ..., an一个 132 模式的子序列 ai, aj, ak 被定义为 i < j < k ai < ak < aj设计一个算法当给定有 n 个数字的序列时验证这个序列中是否含有 132 模式的子序列注意n 的值小于 15000
## 解题思路
- 这一题用暴力解法一定超时
- 这一题算是单调栈的经典解法可以考虑从数组末尾开始往前扫维护一个递减序列