背景 最近在很多JDK源码中都看到了Treiber stack这个单词。 比如CompletableFuture中的: volatile Completion stack; // Top of Treiber stack of dependent actions 比如FutureTask中的: /* ...
分类:
其他好文 时间:
2020-07-03 00:37:03
阅读次数:
81
1.用栈求中缀表达式的值: 建立2个栈,S1暂存操作数,S2暂存运算符,当遇到操作数则入S1,遇到运算符准备入S2,首先若S2为空或者S2栈顶为'(',则运算符直接入S2栈,若S2不空并且S2栈顶非'(',若当前扫描运算符的运算优先级大于栈顶运算符优先级,则入栈S2,否则对S2不停地执行出栈操作,每 ...
分类:
其他好文 时间:
2020-06-24 16:19:37
阅读次数:
53
原题:hdu1312 B: 不要停下来啊 题目描述 丁丁妹因为上山挖大头菜而误打误撞进入了一处古代遗迹,古代遗迹是一个n×m n × m 的迷宫,丁丁妹所处的位置用'@'标出,'.'表示道路,'#'表示墙壁。为了逃出迷宫,丁丁妹想知道她最长能在迷宫中走多少格。我们的目的地根本不重要,只要继续前行就好 ...
分类:
其他好文 时间:
2020-05-27 22:05:46
阅读次数:
101
import java.util.Stack;/** * 实现一个栈,在基本功能的基础上,可以返回栈中最小值 */public class GetMinStack { public static class MyStack { public Stack<Integer> stackData; pub ...
分类:
其他好文 时间:
2020-04-29 01:30:04
阅读次数:
80
题目描述 假设一个表达式有英文字母(小写)、运算符(+,—,*,/)和左右小(圆)括号构成,以“@”作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回“YES”;否则返回“NO”。假设表达式长度小于255,左圆括号少于20个。 输入 一行字符串 输出 YES或者NO ...
分类:
编程语言 时间:
2020-03-27 17:08:07
阅读次数:
164
//容器stack,其源代码包含着deque,其本质也可被称为容器的适配器 //容器stcak中不能进行定位插入或着删除,因为一旦进行定位插入和删除,那么栈这个容器的封闭性将会被破坏 #include <iostream> #include <stack> using namespace std; ...
分类:
其他好文 时间:
2020-02-09 12:04:02
阅读次数:
78
1.使用LinkedList实现Stack栈 根据接口Stack ,实现类:MyStack,并向这个栈中,压入5个英雄,接着弹出5个英雄 1 package Collection; 2 3 import java.util.LinkedList; 4 import java.util.List; 5 ...
分类:
编程语言 时间:
2020-01-20 18:47:30
阅读次数:
77
1. ADO(Abstract Data Object): 不向用户展示具体的实现,更好的提供灵活性 2. 用stack实现括号配对,检查所有括号是不是成对出现的 找到左括号加入stack中,找到右括号之后判断stack是否为空,为空则直接返回false,不为空则对stack进行pop,直到EOF( ...
分类:
其他好文 时间:
2019-10-01 11:49:46
阅读次数:
101
秋招已经过半,啥都没有,每日凉凉的心态,重要的是觉得自己竟然毫无长进! 算法的坑,进去了就不想出了,心累。 决定坚持到十二月份,如果毫无结果就考教师资格证,考雅思,准备别的方向了。 来复盘下吧: 1.笔试 (1)在图的搜索算法中, DFS(深度优先遍历): 通常可以用stack实现; 基于递归的搜索 ...
分类:
其他好文 时间:
2019-09-26 12:08:53
阅读次数:
112
package com.dh.learn.queue; import java.util.concurrent.SynchronousQueue; // SynchronousQueue put/take 操作必须匹配,否则线程等待,直到与当前操作匹配的操作出现 // SynchronousQueu... ...
分类:
其他好文 时间:
2019-08-06 12:24:23
阅读次数:
95