zoukankan      html  css  js  c++  java
  • 栈的运用(1)

    问题描述:

      火车调度站的入口处有n节硬席或软席车厢(以HS表示)等待调度,试编写算法,输出对这n节车厢进行调度的操作(即入栈或出栈操作)序列,使得所有软席车厢都被调整到硬席车厢之前。

    问题分析:

    此题主要解决的问题是,不管是入栈还是出栈,软席车厢要在硬席车厢之前

    一开始能想到的效果就是一头一尾都是软席,这样入栈和出栈都使得软席在硬席之前咯

     没看清题目啊,题目是说要把所有软席车厢都被调整到硬席车厢之前呢?亲啊。

    Int main()

    {

      Stack s;

      Char buffer[80];

      InitStack(s);

      Int i=0,j=0;

      Printf(请输入序列\n);

     While(i<s.stacksize){

     

       Scanf(%c,&buffer[i]);

        I++;

       }//这段代码时有问题的

    C语言知道该怎么写了,

    得承认写得少,但是来得及的,你看数据结构可以给你补很多知识。

    Scanf(%s,buffer);//自己试着多写写就是熟悉了。

    C++是直接这样写的

    Cin>>buffer;

    While(buffer[i]){

     If(buffer[i]==S){

       Buffer[j]=buffer[i];

       j++;

     }

     Else

      Push(s,buffer[i]);

      I++;

    }

    While(buffer[j])//说实话,我对数组的使用还不是很清楚,声明了一个字符数组,用得有些别扭,要多编程。

    {

      Pop(s,buffer[j]);

      J++;

    }

    Printf(%s,buffer);//各种语言的使用并不可怕,关键是编程的思想呢?可能这语句有问题,在C++中是这样表示的,cout<<buffer<<endl;

    Return 0;

    }

  • 相关阅读:
    Python流程控制
    Python 迭代器和列表解析
    Python 文件对象
    TF-IDF介绍
    hexo博客更换主题
    学习笔记—MapReduce
    Mac下Anaconda的安装和使用
    Flume的介绍和简单操作
    hexo+github搭建个人博客
    Hbase的安装和基本使用
  • 原文地址:https://www.cnblogs.com/wj204/p/3044331.html
Copyright © 2011-2022 走看看