• 力扣第49天--- 第503题、第42题


    # 力扣第49天— 第503题、第42题

    一、第503题–下一个更大元素II

    ​ 跟之前的题很像。收尾相连、或者成环的循环,用取模的操作模拟。

    class Solution {
    public:
        vector nextGreaterElements(vector& nums) {
            stack st;
            vector result(nums.size(), -1);
            st.push(0);
            for(int j=1; j < nums.size()*2; ++j){
                int i = j % nums.size();
                if(nums[i] <= nums[st.top()]) st.push(i);
                else{
                    while(!st.empty() && nums[i]> nums[st.top()]) {
                        result[st.top()] = nums[i];
                        st.pop();
                    }
                    st.push(i);
                }
            }
            return result;
        }
    };
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    二、第42题–接雨水

    ​ 常考的题,困难难度。有些费劲,但还可以。

    class Solution {
    public:
        int trap(vector& height) {
            int sum = 0;
            stack st;
            st.push(0);
            for(int i = 1; i height[st.top()]){
                        int mid = st.top();
                        cout << i<< '-'<< mid <<'-'<< sum <
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
  • 相关阅读:
    【经验分享】一个实用的C语言宏定义技巧写法
    如何写专利
    BioVendor sRAGE抗体解决方案
    【二八法则】精品和爆款的力量
    云ES容灾方案
    SolidJs与React区别
    Linux常用指令(十一)——关机重启
    人工智能驱动的自然语言处理:解锁文本数据的价值
    vue项目中使用lottie
    配置github
  • 原文地址:https://blog.csdn.net/u013441272/article/details/133156487