剑指offer——面试题21:包含min函数的栈
剑指offer——面试题21:包含min函数的栈
Solution1:
辅助栈!
逻辑上要想清楚。。但是用栈结构来实现栈,目的不知为何。。。
class Solution {
public:void push(int value) {data.push(value);if(data_min.empty()){ //辅助栈为空,则value直接压入辅助栈data_min.push(value);}else { //辅助栈非空,int stack_min = std::min(data_min.top(),value);data_min.push(stack_min);}return;}void pop() {data.pop();data_min.pop();return;}int top() {return data.top();}int min() {return data_min.top();}
private:stack<int> data;stack<int> data_min;
};
剑指offer——面试题21:包含min函数的栈相关推荐
- 剑指offer面试题[21]包含min函数的栈
题目: 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数. 分析: 看到这个问题,我们的第一反应可能是每次压入一个新元素进栈时,将栈里所有的元素排序,让最小的元位于栈顶,这样就能在 ...
- 剑指offer面试题30. 包含min函数的栈(辅助栈)
题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.push 及 pop 的时间复杂度都是 O(1). 思路 详见链接 代码 class Min ...
- 【剑指offer-Java版】21包含min函数的栈
包含min操作的栈:在基本栈基础上提供一个Min功能,可以取得当前栈的最小值 重点在于思路,拿空间换取了Min的功能,申请一个等量空间的辅助栈用于存取栈中的最小元素 public class _Q21 ...
- 剑指offer(20)包含min函数的栈
import java.util.Stack;public class Solution {//创建俩个辅助栈,stack1用来存放压入的元素,stack2用来保存较小元素Stack<Integ ...
- 剑指offer——面试题7:用两个栈实现队列
剑指offer--面试题7:用两个栈实现队列 Solution1: 注意栈的基本操作与vector略有不同~ class Solution { public:void push(int node) { ...
- [剑指offer]面试题21:包含min函数的栈
面试题21:包含min函数的栈 题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数.在该栈中,调用min.push及pop的时间复杂度都是O(1). 栈内压入3.4.2.1之 ...
- 剑指offer:面试题30. 包含min函数的栈
题目:包含min函数的栈 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.push 及 pop 的时间复杂度都是 O(1). MinStack min ...
- [剑指offer]面试题7:用两个栈实现队列
面试题7:用两个栈实现队列 题目:用两个栈实现一个队列.队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能. 用两个栈模 ...
- [剑指offer]面试题1:赋值运算符函数
面试题1:赋值运算符函数 题目:如下为类型CMyString的声明,请为该类型添加赋值运算符函数. class CMyString {public:CMyString(char *pData = nu ...
最新文章
- 自学编程是从python语言还是c语言开始-初中生想学编程,请问先学C语言好还是先学Python?...
- LinkedList源码剖析
- PHP实现简单文件上传系统
- 【图精】徐克镜头里的十大美人
- python-excel 批量新建excel工作表
- vue+elementui搭建后台管理界面(6登录和菜单权限控制)
- 日志查看工具 logviewer pro的使用
- kde下gwenview启动慢,甚至几十秒才能启动
- 精选目标检测3——yolo1、yolo2、yolo3和SSD的网络结构汇总对比
- C语言-打印菱形三角形等图形
- 2022 Google IO大会新技术
- [CTF攻防世界] WEB区 关于备份的题目
- 32位和64位CPU操作系统的区别
- WebVTT字幕格式
- 浅识Flutter 基本组件之showDatePicker方法
- 1到100的偶数之和是多少_求1到100之间所有偶数之和
- Spring 学习笔记(day02)
- 手里有200万,如何理财
- 将dicom的ct值归一到(0,255)
- linux禁用打印切换服务命令行,linux下启用或禁用打印机的打印操作
热门文章
- (七)图像处理中常用算子Laplacian\Sobel\Roberts\Prewitt\Kirsch
- html 星空效果,html5 canvas炫酷旋转银河系星空背景特效
- java.sql找不到_java.sql.SQLException:找不到适用于jdbc:microsoft:
- android 初始化变量,变量初始化 - Android Studio
- 路由器上的usb接口有什么用_路由器上面的USB接口有什么用途,你都知道吗?
- python 返回函数 闭包_python中闭包Closure函数作为返回值的方法示例
- typora html代码无效,Typora优化-适合不懂CSS代码的小白
- java miniui datagrid_miniui datagrid 的客户端分页解决方案
- python提取表里数据_python提取分析表格数据
- trie树的数据结构_C / C ++中的Trie数据结构