保定建设招聘信息网站,网站开发相关职业岗位,自己建设网站需要花多少钱,网站建设管理策划书设计包含 min函数的栈()定义栈的数据结构#xff0c;要求添加一个 minminmin函数#xff0c;能够得到栈的最小元素。要求函数 min、push以及 pop 的时间复杂度都是 O(1)。#include using namespace std;/*by hk 2015-7-1*/#define MAX ((~(unsigned int )0)-1)/2class stack{…设计包含 min函数的栈()定义栈的数据结构要求添加一个 minminmin函数能够得到栈的最小元素。要求函数 min、push以及 pop 的时间复杂度都是 O(1)。#include using namespace std;/*by hk 2015-7-1*/#define MAX ((~(unsigned int )0)-1)/2class stack{public:int stack_data[100];/*数据元素*/int stack_min[100];/*每次插入值 对于当前最小值*/int iter;int iter_min;stack(){iter0;iter_min1;stack_min[1]MAX;}void pop(){if(iter0){--iter;--iter_min;}}void push(int x){if(iter99){stack_data[iter]x;if(x{stack_min[iter_min]x;stack_min[iter_min]MAX;}else{stack_min[iter_min]stack_min[iter_min-1];iter_min;}}}int min(){return stack_min[iter_min-1];}};int main(int argc, char *argv[]){stack stk;stk.push(7);stk.push(3);stk.push(2);stk.push(8);stk.push(1);stk.pop();coutreturn 0;}