数据结构-栈

一、基本概念

栈:先进后出(FILO)的数据结构。

Java中栈的实现类是Stack,间接实现了List接口。Stack的常用操作为:push(),pop(),peek(),empty()等。

二、常见算法题

2.1 无水平

1:设计一个有getMin功能的栈

使用两个Stack,一个用于存储数据,另一个用于存储当前栈中的最小值。

注意:入栈操作同时操作两个栈,出栈操作同时操作两个栈。

2:两个栈组成一个队列

使用两个Stack,StackIn用于数据入栈,StackOut用于数据出栈。

注意:

1:StackOut为空时将StackIn中的数据全部"倒入"StackOut中;

2:StackOut不为空时直接从StackOut中出栈;

3:用一个栈实现另一个栈的排序

两个栈互为辅助栈

2.2有水平

相关推荐
Tmbcan10 分钟前
zkw 线段树-原理及其扩展
数据结构·zkw 线段树
2301_8017609318 分钟前
数据结构--PriorityQueue
数据结构
乐悠小码23 分钟前
数据结构------队列(Java语言描述)
java·开发语言·数据结构·链表·队列
爱吃生蚝的于勒5 小时前
C语言内存函数
c语言·开发语言·数据结构·c++·学习·算法
workflower11 小时前
数据结构练习题和答案
数据结构·算法·链表·线性回归
一个不喜欢and不会代码的码农11 小时前
力扣105:从先序和中序序列构造二叉树
数据结构·算法·leetcode
No0d1es13 小时前
2024年9月青少年软件编程(C语言/C++)等级考试试卷(九级)
c语言·数据结构·c++·算法·青少年编程·电子学会
bingw011413 小时前
华为机试HJ42 学英语
数据结构·算法·华为
Yanna_12345614 小时前
数据结构小项目
数据结构
木辛木辛子15 小时前
L2-2 十二进制字符串转换成十进制整数
c语言·开发语言·数据结构·c++·算法