| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> C++中栈的基本运用 -> 正文阅读 |
|
[数据结构与算法]C++中栈的基本运用 |
栈是一种基本数据结构,它的特点是后进先出,先进后出。可以类比取羽毛球,在球筒中后放进去的球是最先拿出来的。 要使用栈必须先包含<stack>。
栈的基本操作有入(压)栈,出(退)栈,查找栈顶元素,获取栈元素个数,判空。代码实现如下:
栈可以用来进行括号匹配等,相应的题目如下 苗苗今天刚刚学会使用括号,不过他分不清小括号,中括号,大括号和尖括号,不知道怎么使用这些括号,请帮助他判断括号使用是否正确。 输入格式 共一行,包含一个由 输出格式 如果输入的字符串中的括号正确匹配则输出 数据范围 输入字符串长度不超过 10000 输入样例:
输出样例:
题目来源:Acwing第3693题,原题连接:括号匹配 题解如下:
一个合法的括号字符串满足以下条件:
例如,“()”,“()()”,“(())” 这些都是合法的。 现在,给定一个由 请你求出其中的最长合法括号子串的长度以及数量。 输入格式 共一行,一个由 输出格式 一行两个整数,表示最长合法括号子串的长度以及数量。 如果不存在合法括号子串,则输出 数据范围 前六个测试点满足:1≤|S|≤100 输入样例1:
输出样例1:
输入样例2:
输出样例2:
?题目来源:Acwing第30场周赛第2题,原题链接:最长合法括号子串 ?题解如下:
另外,考研中也会涉及到栈的运用,例如: 1.?一个栈的入栈序列是abcde,则栈的不可能的输出序列是_____(南京航空航天大学??2011年) 正确答案为C A选项中,abcde依次入栈然后依次出栈即可达成此输出序列。 B选项中,abcd先入栈,然后d出栈,e进栈,e出栈,abc再依次出栈即可达成此输出序列。 C选项错误,不可能达成此输出序列。 D选项中,a入栈,a出栈,b入栈,b出栈....e入栈,e出栈即可达成此输出序列。 此外,有n个元素的栈,出栈元素排序的方式共有种,这个数也被称为卡特兰数。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 18:43:24- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |