当前位置: 首页 > article >正文

C#,《小白学程序》第九课:堆栈(Stack),先进后出的数据型式

1 文本格式


/// <summary>
/// 《小白学程序》第九课:堆栈(Stack)
/// 堆栈与队列是相似的数据形态;特点是:先进后出;
/// 比如:狭窄的电梯,先进去的人只能最后出来;
/// 堆栈应用场景不是很多,但某些关键的地方用堆栈效果最好。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button9_Click(object sender, EventArgs e)
{
    // #1 定义一个狭窄的电梯(堆栈)
    Stack<string> st = new Stack<string>();

    // #2 电梯上人啦!按什么顺序出来呢?
    st.Push("tony");
    st.Push("jim");
    st.Push("john");
    st.Push("tom");
    st.Push("philip");

    // #3 打印出来的顺序!
    StringBuilder sb = new StringBuilder();
    // 序号
    int idx = 1;
    while (st.Count > 0)
    {
        // 显示 第 idx 个人是谁 st.Pop() ?电梯里还有 st.Count 几个人?
        // st.Pop 弹出?
        sb.AppendLine(idx + ": " + st.Pop() + " leave " + st.Count + " peoples.<br>");
        idx++;
    }

    webBrowser1.DocumentText = sb.ToString();
}
 

2 代码格式


/// <summary>
/// 《小白学程序》第九课:堆栈(Stack)
/// 堆栈与队列是相似的数据形态;特点是:先进后出;
/// 比如:狭窄的电梯,先进去的人只能最后出来;
/// 堆栈应用场景不是很多,但某些关键的地方用堆栈效果最好。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button9_Click(object sender, EventArgs e)
{
    // #1 定义一个狭窄的电梯(堆栈)
    Stack<string> st = new Stack<string>();

    // #2 电梯上人啦!按什么顺序出来呢?
    st.Push("tony");
    st.Push("jim");
    st.Push("john");
    st.Push("tom");
    st.Push("philip");

    // #3 打印出来的顺序!
    StringBuilder sb = new StringBuilder();
    // 序号
    int idx = 1;
    while (st.Count > 0)
    {
        // 显示 第 idx 个人是谁 st.Pop() ?电梯里还有 st.Count 几个人?
        // st.Pop 弹出?
        sb.AppendLine(idx + ": " + st.Pop() + " leave " + st.Count + " peoples.<br>");
        idx++;
    }

    webBrowser1.DocumentText = sb.ToString();
}


http://www.kler.cn/a/146807.html

相关文章:

  • 【第七节】在RadAsm中使用OllyDBG调试器
  • 详解Rust的数据类型和语法
  • IO技术详解
  • 第十六届蓝桥杯模拟赛(第一期)-c++/c
  • Stable Diffusion核心网络结构——CLIP Text Encoder
  • 通过华为鲲鹏认证发行上市的集成平台产品推荐
  • Git设置多个仓库同时推送
  • 【实时渲染】图形渲染管线
  • codeformer,是如何对数据进行降级处理的?是如何模糊人脸图像的?
  • quickapp_快应用_全局数据
  • Open Feign 源码解析(四) --- 请求对象构造(上)
  • 【Qt】判断QList链表内是否有重复数据
  • 微服务系列(三)--通过spring cloud zuul过滤器实现线上流量复制
  • 系统架构设计:8 论软件架构风格
  • mycat快速搭建
  • 微信小程序开发学习——小程序基本架构
  • 【设计模式-2.1】创建型——单例模式
  • HTML CSS登录网页设计
  • torch.nn.batchnorm1d,torch.nn.batchnorm2d,torch.nn.LayerNorm解释:
  • 数据结构总复习
  • React中通过children prop或者React.memo来优化子组件渲染【react性能优化】
  • scala 实现表达式解析
  • 在UE中使用C++时的Pascal命名法
  • 【服务器能干什么】二十分钟搭建一个属于自己的 RSS 服务
  • LeeCode前端算法基础100题(4)- 无重复字符的最长子串
  • 青少年CTF之PHP特性练习(1-5)