每日一题(34) - 包含最小值Min函数的栈
来源:互联网 发布:初中毕业网络教育大专 编辑:程序博客网 时间:2024/05/20 07:18
题目来自剑指offer
题目
思路:除了栈的基本结构以外,另外维护一个数组保存最小值
代码
#include <iostream>#include <assert.h>using namespace std;class Stack{public:Stack();int Pop();void Push(int nData);int Min();private:int m_nTop;int m_nArrData[100];int m_nArrMin[100];};Stack::Stack(){m_nTop = -1;}int Stack::Pop(){assert(m_nTop >= 0);return m_nArrData[m_nTop--];}void Stack::Push(int nData){assert(m_nTop < 99);m_nArrData[++m_nTop] = nData;//设置最小值数组if (m_nTop == 0 || nData < m_nArrMin[m_nTop - 1]){m_nArrMin[m_nTop] = nData;}else{m_nArrMin[m_nTop] = m_nArrMin[m_nTop - 1];}}int Stack::Min(){assert(m_nTop > -1);return m_nArrMin[m_nTop];}int main(){int nArr[4] = {3,4,2,1};Stack s;for (int i = 0;i < 4;i++){s.Push(nArr[i]);cout<<"Min Num: "<<s.Min()<<endl;}for (int i = 0;i < 4;i++){cout<<"Min Num: "<<s.Min()<<endl;s.Pop();}return 1;}
- 每日一题(34) - 包含最小值Min函数的栈
- Min Stack 包含最小值的栈实现
- 编程题:包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min 函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- 包含min函数的栈
- Nutch学习笔记三
- coreText图文混排
- MFC的SendMessage函数详解
- linux 系统交换区解释
- wince7 I am coming
- 每日一题(34) - 包含最小值Min函数的栈
- UITableViewCell的标记、移动、删除、插入
- 写给新手程序员的一封信
- 半波整流
- How to fix error "SqlStudio Editor Package did not load correctly" in VS2012
- Java开源GIS系统
- Memcached学习笔记(四)——repcached高可用方案
- hdu 1560 DNA sequence (IDA*)
- HDOJ 1087 Super Jumping! Jumping! Jumping! 杭电 ACM