套路

作者: 陶者001 | 来源:发表于2020-12-13 15:26 被阅读0次

    // ===============================================================

    // 1、单调栈的套路

    // 主要解决一维排序的问题

    int largestRectangleArea(vector<int> &height)

    {

        int ret = 0;

        height.push_back(0);

        vector<int> index;

        for (int i = 0; i < height.size(); i++) {                            // 关键点

            while (index.size() > 0 && height[index.back()] >= height[i]) {  // 关键点

                int h = height[index.back()];

                index.pop_back();

                int sidx = index.size() > 0 ? index.back() : -1;

                ret = max(ret, h * (i - sidx - 1));

            }

            index.push_back(i);

        }

        return ret;

    }

    相关文章

      网友评论

          本文标题:套路

          本文链接:https://www.haomeiwen.com/subject/dbqpgktx.html