資料結構實驗之棧四 括號匹配

2021-07-04 13:37:23 字數 1197 閱讀 8132

給你一串字元,不超過50個字元,可能包括括號、數字、字母、標點符號、空格,你的任務是檢查這一串字元中的( ) ,[ ],是否匹配。

輸入資料有多組,處理到檔案結束。

如果匹配就輸出「yes」,不匹配輸出「no」

sin(20+10)

]

yesno

鍊錶的方法,較為複雜。需要建立鏈棧,將陣列代替棧的方法換為了線性表

#include #include #include #includeusing namespace std;

typedef char anytype;

struct stacks

*head;

stacks() //構造鏈

bool empty() //判斷是否為空棧

void push(anytype n) //入棧

void pop() //出棧

} anytype top() //查詢棧頂元素

};

bool isbrackets(char ch) //判斷輸入的是否為括號

bool tocheck(stacks &s,char ch) // 檢查是否與棧頂括號匹配

switch(ch)

':

if(s.top()=='

} int main()

{ ios::sync_with_stdio(false);

string str;

while(getline(cin,str,'\n'))

{ stacks s;

bool mark=true;

int len=str.length();

for(int i=0; i

#include #include #include #include #include #include using namespace std;

int main()

{ char f[60],t;

int i;

while(gets(f)!=null)

{ stack s;

int v=1;

for(i=0;i

資料結構實驗之棧四 括號匹配

time limit 1000ms memory limit 65536k 給你一串字元,不超過50個字元,可能包括括號 數字 字母 標點符號 空格,你的任務是檢查這一串字元中的 是否匹配。輸入資料有多組,處理到檔案結束。如果匹配就輸出 yes 不匹配輸出 no sin 20 10 yesno ma...

資料結構實驗之棧四 括號匹配

資料結構實驗之棧四 括號匹配 time limit 1000ms memory limit 65536k 題目描述 給你一串字元,不超過50個字元,可能包括括號 數字 字母 標點符號 空格,你的任務是檢查這一串字元中的 是否匹配。輸入 輸入資料有多組,處理到檔案結束。輸出 如果匹配就輸出 yes 不...

資料結構實驗之棧四 括號匹配

time limit 1000ms memory limit 65536k 給你一串字元,不超過50個字元,可能包括括號 數字 字母 標點符號 空格,你的任務是檢查這一串字元中的 是否匹配。輸入資料有多組,處理到檔案結束。如果匹配就輸出 yes 不匹配輸出 no sin 20 10 yesno in...