日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > [LeetCode] Min Stack

[LeetCode] Min Stack

來源:程序員人生   發布時間:2015-04-20 08:18:05 閱讀次數:2671次

Min Stack


Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.

  • push(x) -- Push element x onto stack.
  • pop() -- Removes the element on top of the stack.
  • top() -- Get the top element.
  • getMin() -- Retrieve the minimum element in the stack.
解題思路:

主要是取得當前最小值的問題。我們可以用1個動態數組min存儲當前最小值。若新壓入的元素大于動態數組min最后1個元素,不做任何操作。否則(小于或等于)就壓入min中。出棧的時候,若出棧元素等于min最后1個元素,則min數組出棧。這樣便實現了常量時間找到棧中的最小值了。下面是代碼:

class MinStack { public: MinStack(){ capcity=2; data = new int[capcity]; size=0; minCapcity=2; min = new int[minCapcity]; minSize = 0; } ~MinStack(){ delete[] data; delete[] min; } void push(int x) { if(size>=capcity){ int* p=data; capcity = 2*capcity; data=new int[capcity]; std::memcpy(data, p, sizeof(int)*size); delete[] p; } data[size++]=x; if(minSize==0){ min[minSize++]=x; }else if(min[minSize⑴]>=x){ if(minSize>=minCapcity){ int* p=min; minCapcity = 2*minCapcity; min = new int[minCapcity]; std::memcpy(min, p, sizeof(int)*minSize); delete[] p; } min[minSize++]=x; } } void pop() { if(size>0){ size--; if(data[size]==min[minSize⑴]){ minSize--; } }else{ throw exception(); } } int top() { if(size>0){ return data[size⑴]; }else{ throw exception(); } } int getMin() { return min[minSize⑴]; } private: int size; int capcity; int* min; int minSize; int minCapcity; int* data; };

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 中国一级片在线观看 | 久久1区| 亚洲成人免费 | 久久免费av | 国产精品久久久久久久久久小说 | 免费在线观看av | 国产毛片av | 99国产精品一区 | 中文字幕国产一区二区三区 | 日韩欧美一区二区在线 | 国产成人在线播放 | 精品国产31久久久久久 | 少妇精品视频一区二区免费看 | 国产中文一区二区三区 | 国产精品电影一区二区三区 | 日韩一二三四 | 久久精品国产一区二区三区 | 黄色一级片在线看 | 久久精品99国产精品日本 | 国产精品久久久久久久免费大片 | 99久色| 综合av在线| 二区影院 | 日本一区二区三区免费看 | 成人福利在线看 | 欧美在线播放 | 综合久久伊人 | 三级日韩 | 亚洲精品一二三 | 婷婷在线综合 | 九九热一区二区 | 久久精品欧美 | 成人午夜激情 | 欧洲精品久久 | 成人99| 91视频国产区 | 国产一区二区三区四区 | 日韩欧美亚洲一区二区 | 国产成人在线视频播放 | 精品福利视频一区二区三区 | 免费av高清 |