栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【英雄哥七月集训】第 14天:栈

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【英雄哥七月集训】第 14天:栈

系列文章

【英雄哥七月集训】第 01天:数组

【英雄哥七月集训】第 02天:字符串

【英雄哥七月集训】第 03天:排序

【英雄哥七月集训】第 04天:贪心

【英雄哥七月集训】第 05天:双指针

【英雄哥七月集训】第 06天:滑动窗口

【英雄哥七月集训】第 07天:哈希表

【英雄哥七月集训】第 08天:前缀和

【英雄哥七月集训】第 09天:二分查找

【英雄哥七月集训】第 10天:位运算

【英雄哥七月集训】第 11天:矩阵

【英雄哥七月集训】第 12天:链表

【英雄哥七月集训】第 13天:双向链表

【英雄哥七月集训】第 14天:栈

文章目录
  • 系列文章
  • 一、括号的最大嵌套深度
    • leetcode1614 java
  • 二、 从尾到头打印链表
    • leetcode06 java
  • 三、 设计一个支持增量操作的栈
    • leetcode1381 java
  • 四、 用栈操作构建数组
    • leetcode1441 java
  • 总结


一、括号的最大嵌套深度

1614. 括号的最大嵌套深度

leetcode1614 java
class Solution {
    public int maxDepth(String s) {
        int ans = 0, size = 0;
        for(int i=0;i

            if(s.charAt(i)=='('){
                size++;
                ans = Math.max(ans,size);
            } else if(s.charAt(i)==')'){
                size--;
            }
        }
        return ans;

    }
}



二、 从尾到头打印链表

剑指 Offer 06. 从尾到头打印链表

leetcode06 java
class Solution {
    public int[] reversePrint(ListNode head) {
        ListNode node = head;
        int count = 0;
        while(node!=null){
            count++;
            node=node.next;
        }
        int[] nums = new int[count];
        node = head;
        for(int i=count-1;i>=0;i--){
            nums[i]=node.val;
            node = node.next;
        }
        return nums;


    }
}



三、 设计一个支持增量操作的栈

1381. 设计一个支持增量操作的栈

leetcode1381 java
class CustomStack {
    int top=0,size=0;
    int[] stk;

    public CustomStack(int maxSize) {
        stk = new int[maxSize+1];
        top = 0;
        size = maxSize;
    }
    
    public void push(int x) {
        if(top>=size){
            return;
            
        }
        stk[top++]=x;
    }
    
    public int pop() {
        if(top==0){
            return -1;
        }
        return stk[--top];

    }
    
    public void increment(int k, int val) {
        for(int i = 0;i
            stk[i]+=val;
        }

    }
}




四、 用栈操作构建数组

1441. 用栈操作构建数组

leetcode1441 java
class Solution {
    public List buildArray(int[] target, int n) {
        int m = target.length;
        int j=0;
        List res = new ArrayList<>();
        for(int i = 1;i<=n && i<=target[m-1];i++){
            if(i==target[j]){
                res.add("Push");
                j++;

            } else{
                res.add("Push");
                res.add("Pop");
            }
        }
        return res;

    }
}

总结 暑期编程PK赛 得CSDN机械键盘等精美礼品!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1016985.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号