棧的輸入和輸出判斷

2021-07-01 20:44:24 字數 902 閱讀 6478

棧是資料結構裡最常用的一種,有時候給乙個有序的輸入要判斷一種順序是否符合棧的輸出. 

例如:輸入為:1 2 3 4 5 6 來判斷怎樣的輸出是符合棧的特點的輸出 

輸出為 : 1 2 3 4 5 6 是符合的 因為可以1入1出 2 入2出 ……最後6入6出。 

輸出為:6 5 4 3 2 1也是可以的 因為可以1 2 3 4 5 6都入棧然後在一一出棧 

輸出為:5 6 2 3 4 1 是違法的 因為無論怎麼進行壓棧和出棧是得不到這個結果的 棧的輸入是從小到大的 所以當輸出6時除了5已經輸出外 其他的(1234)都是在棧中的 而且因為他們的入棧是按序的 所以出棧也是按序的(順序正好相反) 所以總結出乙個判斷規則 :比當前數小的且在當前數之後進行輸出的他們的輸出順序都是逆序的.例如剛才的輸出6之後的2341應該為逆序的 為4321。 

下面來寫個程式來模擬棧的輸出 

例: 輸入: 

6 6 5 4 3 2 1 

輸出:yes 

輸入: 

7 7 6 4 5 3 2 1 

輸出:no 

第乙個輸入為輸入的個數 ,第二個輸入為輸入序列

#include 

#include

#define maxsize 50

int main()

//檢測按序輸入的數和目標數是否相等

else

if(top&&stack[top]==target[b])//如果棧不為空則檢測 檢測棧頂的數是否和目標的數相等 相等則退棧

else

if(a<=n)stack[++top]=a++;//如果按序輸入的數和當前的目標數不相等則壓棧

else

}printf("%s\n",ok?"yes":"no");

}}

輸入和輸出

本章內容為coursera課程c 程式設計中第七周的課件的整理 與輸入輸出流操作相關的類 istream是用於輸入的流類,cin就是該類的物件。ostream是用於輸出的流類,cout就是該類的物件。ifstream是用於從檔案讀取資料的類。ofstream是用於向檔案寫入資料的類。iostream...

輸入和輸出

1 c 的io機制 c 沒有提供關於輸入輸出的語句,但是提供了全面的標準庫來提供io機制。這個標準庫就是iostream庫。許多與io相關的操作都要包含這個庫。2 4個io物件 3 cin的輸入分隔符為空格 4 操縱符 endl endl的作用是結束當前行,並將與裝置關聯的緩衝區資料重新整理到裝置中...

輸入和輸出

安裝pycharm 輸出 就只有乙個語句 print 1 usr bin python2 coding utf 8 34 print hello world 列印出結果,python 有一點比較方便的就是不用管是什麼資料型別,直接列印即可。但是其輸出也有一定的輸出格式 1.輸出不同的進製 1 pri...