第一版,有些错误:

#include<iostream>
#include<vector>
using namespace std;
class TripleInOne {public:vector<int> sk;int sksize = 0;// vector<int> bp(3,0);// vector<int> sp(3,0);vector<int> bp = vector<int>(3,0);vector<int> sp = vector<int>(3,0);TripleInOne(int stackSize) {sk.resize(stackSize*3,-1);sksize = stackSize;bp[0] = 0;bp[1] = stackSize;bp[2] = 2*stackSize;sp[0] = bp[0];sp[1] = bp[1];sp[2] = bp[2];}void push(int stackNum, int value) {int index = (stackNum + 1)*sksize - 1;if(sk[index] == -1){sk[sp[stackNum]] = value;sp[stackNum]++;}}int pop(int stackNum) {if(sp[stackNum] == bp[stackNum])return -1;else {sp[stackNum]--;int ret = sk[sp[stackNum]];sk[sp[stackNum]] = -1;return ret;}}int peek(int stackNum) {return sk[sp[stackNum]];}bool isEmpty(int stackNum) {if(sp[stackNum] == bp[stackNum])return true;else return false;}
};
int main(void){TripleInOne t(1);t.push(0,1);t.push(0,2);cout << t.pop(0) << endl;cout << t.pop(0) << endl;cout << t.pop(0) << endl;cout << t.isEmpty(0) << endl;
}

第二版,使用二维数组

class TripleInOne {public:vector<vector<int>> mysk =  vector<vector<int>>(3); int Size  = 0;TripleInOne(int stackSize) {Size = stackSize;}void push(int stackNum, int value) {if(mysk[stackNum].size() < Size){mysk[stackNum].push_back(value);}}int pop(int stackNum) {if(mysk[stackNum].empty()){return -1;}else {int ret = mysk[stackNum].back();mysk[stackNum].pop_back();return ret;}}int peek(int stackNum) {if(mysk[stackNum].empty()){return -1;}else{return mysk[stackNum].back();}}bool isEmpty(int stackNum) {return mysk[stackNum].empty();}
};/*** Your TripleInOne object will be instantiated and called as such:* TripleInOne* obj = new TripleInOne(stackSize);* obj->push(stackNum,value);* int param_2 = obj->pop(stackNum);* int param_3 = obj->peek(stackNum);* bool param_4 = obj->isEmpty(stackNum);*/

2022-3-28 Leetcode 01.三合一相关推荐

  1. English Learning - Day22 作业打卡 2022.12.28 周三

    English Learning - Day22 作业打卡 2022.12.28 周三 引言 1. 否认这一点就是闭眼不看事实. 2. 他承认拿了手表. 3. 考驾照前我还得再练练. 4. 没有你陪伴 ...

  2. 《实战:centos上安装Go软件》-2022.4.28

    <实战:centos上安装Go软件>-2022.4.28 目录 文章目录 <实战:centos上安装Go软件>-2022.4.28 目录 实验环境 实验软件 1.下载安装包 2 ...

  3. NE40E华为产品文档-----笔记(2022.9.28)

    ** NE40E华为产品文档-----笔记(2022.9.28) ** P34开始 全连接full Mesh 中文解释:全网状 英文来历:Full Mesh表示网络的一种连接形式,即所有结点之间都直接 ...

  4. 实战:Dockerfile构建镜像-2022.2.28

    实战:Dockerfile构建镜像-2022.2.28 目录 文章目录 实战:Dockerfile构建镜像-2022.2.28 目录 实验环境 实验软件 1.Dockerfile概述 2.Docker ...

  5. iMeta | 第1卷第1期在线正式发布(2022/3/28)

    点击蓝字 关注我们 iMeta期刊 第1卷第1期 在线正式发布 ► iMeta是世界上第一本专注于宏基因组.微生物组和生物信息前沿交叉的期刊 ► 2022年3月28日,iMeta第1卷第1期在线发布 ...

  6. 程序员面试金典 - 面试题 03.01. 三合一(数组栈)

    1. 题目 三合一.描述如何只用一个数组来实现三个栈. 你应该实现push(stackNum, value).pop(stackNum).isEmpty(stackNum).peek(stackNum ...

  7. 俄乌局势再起波澜,3月季节性一览,甲醇认购大涨,CCS05收官LPP季节性下跌2022.2.28

    <期货套利基础系列>介绍套利的基础知识: 期货套利基础第一篇:对套利的误解 第2-3篇是套利基础知识,内容来自电子书,有做过套利的人可以跳过: 期货套利基础第二篇:套利交易的基本概念 期货 ...

  8. CASS11.0又双叒更新了,还增加一些实用功能(2022.5.11发布版,更新时间2022.4.28)

    CASS11.0最新官网程序下载(提取码:1111)https://pan.baidu.com/s/1KU9h33iFAYnvuOcouD6cJw CASS地形地籍成图软件,是由广东南方数码科技股份有 ...

  9. 【数字IC前端笔试真题精刷(2022.8.28)】AMD——芯片验证工程师 Design Verification Engineer / 芯片设计工程师 ASIC Design Engineer

    声明:本专栏所收集的数字IC笔试题目均来源于互联网,仅供学习交流使用.如有侵犯您的知识产权,请及时与博主联系,博主将会立即删除相关内容. 笔试时间:2022年8月28日 文章目录 单选题 1.Whic ...

最新文章

  1. golang设置默认地区
  2. 随笔 —— 当下不晚
  3. 你真的会玩SQL吗?Case也疯狂
  4. 从ASP.NET Core 3.0 preview 特性,了解CLR的Garbage Collection
  5. 你对求生欲,一无所知!| 今日最佳
  6. [转载]golang sync.Pool
  7. matlab日期textscan,求助:在MATLAB里如何输入时间序列中的时间
  8. 算法题:I am a student. 转为 student. a am I
  9. Docker教程小白实操入门(17)--如何使用run -v创建一个数据卷
  10. 周期T与频率f数量级对应关系(MHz--μs)
  11. Python数据类型——逻辑值详解
  12. silk lobe资源公众号_【好设计资源库】公众号素材获取方式说明
  13. 从微软官网下载win10镜像.iso文件
  14. 图像处理入门系列之对比度增强
  15. 逻辑思维训练和推理思维训练
  16. kjb文件 解析_Python 之父再发文:构建一个 PEG 解析器
  17. Go2Shell 打开设置窗口
  18. 利用vue实现“显示更多”功能
  19. html页面在ie上出现404怎么解决,ie浏览器网页上有错误解决方法详解
  20. AWD平台搭建及遇到的问题分析

热门文章

  1. 360杀毒软件如何安装 杀毒
  2. 被‘帕金森定律’命中的一周
  3. Linux C/C++ 开发(学习笔记十一 ):TCP服务器(并发网络网络编程 一请求一线程)
  4. WebGL编程指南03-在javaScript程序通过uniform变量向片元着色器传值
  5. ​人工智能创新:方向比努力更重要
  6. 使用React Native 和 微信小程序 编写的一款阅读类app ———《轻松一刻》
  7. EasyGBS国标流媒体视频平台接入海康、大华、宇视的摄像机、硬盘录像机NVR、国标下级平台的方案
  8. 使用Eclips开发Mybatis入门程序
  9. kaldi中文资料最后一章在线解码器遇到的问题及解决方案
  10. 米兔积木机器人与履带机甲零件差别_米兔积木机器人履带机甲版怎么样 米兔积木机器人孩子喜欢吗...