第七讲 stack

1.  栈(stack)这种数据结构在计算机中是相当出名的。栈中的数据是先进后出的(First In Last Out, FILO)。栈只有一个出口,允许新增元素(只能在栈顶上增加)、移出元素(只能移出栈顶元素)、取得栈顶元素等操作。在STL中,栈是以别的容器作为底部结构,再将接口改变,使之符合栈的特性就可以了。因此实现非常的方便。下面就给出栈的函数列表和VS2008中栈的源代码,在STL中栈一共就5个常用操作函数(top()、push()、pop()、 size()、empty() )

2.  stack中的操作

  stack<int> s;

  s.push(x)      无返回值,将元素x压栈

  s.pop();       退栈,无返回值

  s.top();       取栈顶元素,返回栈顶元素

  s.empty();     判断栈是否为空,如果是空,返回1,否则返回0

   s.size();      返回栈中元素的个数

在栈中没有提供清空操作的函数,但是可以间接地实现清空栈,

while(!s.empty())

{

s.pop();

}

#include "stdafx.h"
#include <iostream>
#include <stack>
using namespace std;

int main()
{
    stack<int> iStack;

    for(int i = 0; i < 10; ++i)
    {
        iStack.push(i);
    }

    cout << iStack.size() << endl;

    while(!iStack.empty())
    {
        cout << iStack.top() << " ";
        iStack.pop();
    }
    cout << endl << iStack.size() << endl;
    return 0;
}

第七讲 stack,布布扣,bubuko.com

时间: 2024-07-30 13:49:40

第七讲 stack的相关文章

Stanford机器学习---第七讲. 机器学习系统设计

本文原始版本见http://blog.csdn.net/abcjennifer/article/details/7834256 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归.Octave Tutorial.Logistic Regression.Regularization.神经网络.机器学习系统设计.SVM(Support Vector Machines 支持向量机).聚类.降维.异常检测.大规模机器学习等章节.所有内容均来自Standford公开课mach

(笔记)斯坦福机器学习第七讲--最优间隔分类器

本讲内容 1.Optional margin classifier(最优间隔分类器) 2.primal/dual optimization(原始优化问题和对偶优化问题)KKT conditions(KKT条件) 3.SVM dual (SVM的对偶问题) 4.kernels (核方法) 1.最优间隔分类器 对于一个线性可分的训练集合,最优间隔分类器的任务是寻找到一个超平面(w,b), 使得该超平面到训练样本的几何间隔最大. 你可以任意地成比例地缩放w和b的值,这并不会改变几何间隔的大小. 例如,

《上古天真论》第七讲文字版

上古天真论篇第七讲 主讲:徐文兵  主持:梁  冬 播出时间:2009-01-17  23:00—24:00 经文:四七,胫骨坚,发长极,身体盛壮,五七,阳明脉衰,面始焦,发始堕,六七,三阳脉衰于上,面皆焦,发始白,七七,任脉虚,太冲脉衰少,天癸竭,地道不通. 梁冬:是的,重新发现中医太美.重新发现<黄帝内经>的智慧.欢迎大家收听今天的国学堂,我是梁冬,而对面的仍然是厚朴中医学堂堂主徐文兵老师. 徐文兵:梁冬好!听众朋友们大家好! 梁冬:好,徐老师好!在上一周的时候呢我们讲到了这个女性的每七年

32位汇编第七讲,混合编程,内联汇编

32位汇编第七讲,混合编程 博客园IBinary原创 QQ:2510908331  博客连接:http://www.cnblogs.com/iBinary/ 转载请注明出处,谢谢 混合编程的概念,有时候我们会想,C语言可不可以调用汇编的函数,或者反过来调用 或者说C语言里面内部直接内联汇编去编写. 可以实现,静看怎么实现 一丶C语言调用汇编语言的函数 1.创建工程和代码 ①创建VC++控制台程序 FILE(文件) - NEW (新建) 然后我们打开源文件,一级一级展开,找到我们的main函数 那

蓝鸥零基础学习HTML5第七讲 常见标签及标签类型的转换

蓝鸥零基础学习HTML5第七讲 常见标签及标签类型的转换 1.常见标签-块属性的标签 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" href="css/reset.css"> </head> <

《ArcGIS Engine+C#实例开发教程》第七讲 图层符号选择器的实现

原文:<ArcGIS Engine+C#实例开发教程>第七讲 图层符号选择器的实现 摘要:我们要实现的是图层符号选择器,与ArcMap中的Symbol Selector的类似.本讲较前几讲而言,些许有些复杂,不过只要仔细琢磨,认真操作,你就很容易实现如下所示的符号选择器.  教程目录: 第一讲 桌面GIS应用程序框架的建立 第二讲 菜单的添加及其实现 第三讲 MapControl与PageLayoutControl同步 第四讲 状态栏信息的添加与实现 第五讲 鹰眼的实现 第六讲 右键菜单添加与

第七讲:HTML5中的canvas两个小球全然弹性碰撞

<html> <head> <title>小球之间的碰撞(全然弹性碰撞)</title> <script src="../js/jscex.jscexRequire.min.js" type="text/javascript"></script> </head> <body> <canvas id="mc" width="1200px&

第七讲:解析邮件内容

一.JavaMail解析邮件内容的流程 二.解析邮件内容 2.1 解析普通邮件内容 如果Message.getContentType方法返回的MIME类型为"text/*"则表示邮件内容为文本内容,此时直接调用Message.getContent方法把邮件内容保存了一个String对象中输出给浏览器即可.但是现实邮件中会有HTML格式的邮件内容时,邮件发送程序为了防止有些邮件阅读软件不能显示处理HTML格式的数据,通常都会用两类型分别为"text/plain"和&q

Linux基础知识第七讲,用户权限以及用户操作命令

目录 Linux基础知识第七讲,用户权限以及用户操作命令 一丶简介linux用户,用户权限,组的概念. 1.1 基本概念 1.2 组 1.3 ls命令查看权限. 二丶用户权限修改命令 1.chmod 命令的使用 三丶超级用户,以及组操作. 1.什么是超级用户 2.组管理 四丶添加linux用户,以及删除linux用户 1.命令 2.用户命令 3.让添加的用户具有sudo权限 4.which 查看命令所执行位置的路径 5.用户切换 Linux基础知识第七讲,用户权限以及用户操作命令 一丶简介lin