【英雄哥七月集训】第 01天:数组
【英雄哥七月集训】第 02天:字符串
【英雄哥七月集训】第 03天:排序
【英雄哥七月集训】第 04天:贪心
【英雄哥七月集训】第 05天:双指针
【英雄哥七月集训】第 06天:滑动窗口
【英雄哥七月集训】第 07天:哈希表
【英雄哥七月集训】第 08天:前缀和
【英雄哥七月集训】第 09天:二分查找
【英雄哥七月集训】第 10天:位运算
【英雄哥七月集训】第 11天:矩阵
【英雄哥七月集训】第 12天:链表
【英雄哥七月集训】第 13天:双向链表
【英雄哥七月集训】第 14天:栈
- 系列文章
- 一、括号的最大嵌套深度
- leetcode1614 java
- 二、 从尾到头打印链表
- leetcode06 java
- 三、 设计一个支持增量操作的栈
- leetcode1381 java
- 四、 用栈操作构建数组
- leetcode1441 java
- 总结
一、括号的最大嵌套深度
1614. 括号的最大嵌套深度
leetcode1614 javaclass 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 javaclass 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 javaclass 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机械键盘等精美礼品!



