题目

牛客 AB1 【模板】栈

描述

请你实现一个栈。

操作:

push x:将 加x x\ x 入栈,保证 x x\ x 为 int 型整数。
pop:输出栈顶,并让栈顶出栈
top:输出栈顶,栈顶不出栈

输入描述:

第一行为一个正整数 n n\ n ,代表操作次数。(1≤n≤100000)(1 \leq n \leq 100000)(1≤n≤100000)
接下来的 n n\ n ,每行为一个字符串,代表一个操作。保证操作是题目描述中三种中的一种。

输出描述:

如果操作为push,则不输出任何东西。
如果为另外两种,若栈为空,则输出 "error“
否则按对应操作输出。

示例

输入:6
push 1
pop
top
push 2
push 3
pop输出:1
error
3

代码

class Stack:def __init__(self):self.__data = []# 把列表的最后一个元素作为栈顶def push(self, item):self.__data.append(item)def pop(self):if self.is__empty():return "error"return self.__data.pop()def top(self):  # 返回栈顶元素if self.is__empty():return "error"return self.__data[-1]def is__empty(self):return self.__data == []def size(self):return len(self.__data)if __name__ == '__main__':stack = Stack()n = int(input())while n:n = n - 1s = input(" ")a = s.split()[0]if a == "push":num = int(s.split()[1])stack.push(num)elif a == "pop":print(stack.pop())else:print(stack.top())

用Python实现栈---1顺序表:牛客题解 AB1 【模板】栈相关推荐

  1. 黑马程序员 C语言数据结构与算法之线性表(链表/栈/队列/顺序表)

    C语言 链表基础知识清晰讲解(黑马) 讲的蛮好,就是音质不太好,有时听不清讲的啥! [黑马]数据结构与算法之线性表(链表/栈/队列/顺序表)[配套源码 嘛蛋,看错了,这是java的... 文章目录 链 ...

  2. python算法与数据结构-顺序表(39)

    阅读目录 1.顺序表介绍 2.顺序表的结构 3.顺序表的两种基本实现方式 5.元素存储区扩充 6.顺序表的增删改查操作的Python代码实现 7.顺序表的增删改查操作的C语言代码实现 1.顺序表介绍 ...

  3. python数据结构之线性顺序表

    线性表(linear list)是数据结构的一种,一个线性表是n个具有相同特性的数据元素的有限序列.本文结合了互联网上的一些代码,以及结合百度百科关于线性顺序表的定义,实现了全部代码. 在稍复杂的线性 ...

  4. 1.栈的压栈(入栈、进栈)及出栈 2.顺序表及链表的缓存命中

    一.栈的压栈(入栈.进栈)及出栈 1.栈 1.1栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作.进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底.栈中的数据元素 ...

  5. 基于Python的数据结构实验——顺序表与单链表建立与操作(附详细代码和注释)

    1.创建一个名为 prac02_01.py 的文件,在其中编写一个顺序表的类,该类必须包含顺 序表的定义及基本操作,并通过以下步骤测试基本操作的实现是否正确,给出运行结果. (1)初始化一个顺序表 S ...

  6. 用Python实现数据结构中顺序表基本操作

    class SqList: #顺序表def __init__(self): #构建空表self.elem = []def listAppend(self, item): #插入元素item在表尾sel ...

  7. 牛客练习赛10 B栈和排序【思维】

    题目描述 给你一个1->n的排列和一个栈,入栈顺序给定 你要在不打乱入栈顺序的情况下,对数组进行从大到小排序 当无法完全排序时,请输出字典序最大的出栈序列 输入描述: 第一行一个数n 第二行n个 ...

  8. 牛客网 15029 (栈)

    链接:https://ac.nowcoder.com/acm/problem/15029 来源:牛客网 小鱼儿吐泡泡,嘟嘟嘟冒出来.小鱼儿会吐出两种泡泡:大泡泡"O",小泡泡&qu ...

  9. 牛客网 A-吐泡泡 栈的模拟

    链接:https://www.nowcoder.com/acm/contest/74/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...

最新文章

  1. stopImmediatePropagation函数和stopPropagation函数的区别
  2. 基于容器宽度的字体缩放
  3. 分享Silverlight/WPF/Windows Phone一周学习导读(10月16日-10月22日)
  4. (绝对正确)Zabbix基于lamp的安装流程
  5. 粒子群算法求解带约束优化问题 源码实现
  6. 使用python将excel数据导入数据库
  7. 马逊s3云存储接口_当对象存储“湖”有了强一致性
  8. 编写算法判别给定二叉树是否为完全二叉树_推荐一位实力超强的平安前端算法大佬:瓶子君...
  9. Angular5--viewChild/viewChildren、contentChild/contentChildren使用规则小结
  10. c语言代码大全表解释_正点原子Linux第十章C语言版LED灯实验
  11. weblogic安装
  12. 移动办公平台忘记密码怎么办?移动办公平台下载
  13. 读书笔记(10)网络规划与设计
  14. xhEditor使用方法1
  15. 深度学习实战案例:新闻文本分类
  16. 调用百度api 生成短网址
  17. power BI爬取网页数据方法
  18. 论文阅读笔记:《Neural3D: Light-weight Neural Portrait Scanning via Context-aware Correspondence Learning》
  19. 老路用得上的商学课-81-100学习(读书)笔记
  20. 千年一遇的对称日20200202

热门文章

  1. npm报错:A complete log of this run can be fund in
  2. spring boot项目生成docker镜像并完成容器部署
  3. 华为S7900产品概述
  4. 数字图像处理学习笔记4:图像增强之空间滤波2(一阶微分锐化滤波(梯度),二阶微分锐化(拉普拉斯),非锐化掩蔽)
  5. 《超能失控(导演剪辑加长版)》[BD-RMVB.720p.中英双字] 2012最新科幻
  6. django报名系统设计思路
  7. 2002年考研数学一真题pdf
  8. 《运维管理平台OpsManage》
  9. cesium绘制不同颜色的多段线(SimplePolylineGeometry)
  10. 渗透测试技术----提权(第三方提权和WCE)