HDU 1022(關於棧的詳細解法)

2021-10-05 05:46:34 字數 565 閱讀 6210

題意:就是火車進站問題,實際就是棧的模板

思路:那麼我們用棧來解決這個問題,無非是入棧,出棧。那麼我們先壓入出棧序列的第乙個元素,然後我們就需要要進行判斷了。如果棧中元素等於預想出棧序列的頭元素,那麼就彈出棧中當前元素,(這個還需要記錄出棧還是入棧,因為最後要列印,所以我們首先開乙個布林陣列1代表入棧,0代表出棧),記錄出棧,不相等那麼就繼續從入棧序列中繼續壓入元素,記錄入棧。 後面的就是控制輸出跟清棧了。

#include

using

namespace std;

stack<

char

> st;

bool flag[

105]

;//1表示進 , 0表示出

intmain()

else}if

(j!=n) cout<<

"no."

cout<<

"finish"

<}while

(!st.

empty()

)return0;

}

hdu1022 火車 棧的使用

今天做的水題有點多,猶豫要不要發出來,不管了,明天再說 想起大二下的時候資料結構為了乙個棧的寫費了多長的時間,現在用stl的格式簡潔明快。所以說 不要重複造輪子。簡直要哭了。隨便寫寫吧 完整 如下,一些小的感受也儲存了起來,明天再好好練習 include include include includ...

HDU 1022 棧的基本操作應用

首先先介紹下c stl 中的 stack.stack也是程式設計中常常用到的資料容器,stl為我們提供了stack的實現,因此在使用stack時必須包含標頭檔案 include,並使用統一命名空間。1.宣告乙個stack stacks1 stacks2 stacks3 stack模板類需要2個模板引...

hdu1022火車進站(有關棧的基本問題)

hdu1022 很簡單的棧的使用,第一次涉及到 棧的標頭檔案 來列舉一下這道題裡面用到的有關棧的命令 stacktrain 構建乙個資料型別是char的棧,然後這個棧的名字叫train train.empty 判斷棧train是不是為空,是空就返回1,非空就返回0.train.push 資料 資料 ...