問題描述:
假設乙個算術表示式中可以包含三種括號:圓括號「()」,方括號「【】」及花括號「{}」,且這三種括號可以任意次序巢狀。編寫演算法判斷給定表示式中所含括號是否配對出現。
解答:假設表示式已存入字元陣列a【n】中,具體演算法如下:
#include using namespace std;
char s[99];//棧儲存{,(,[
int top;
int flag;
int prool(char a,int n)//匹配演算法
{ top=-1;
int i=0;
flag=1;
while(i>n)
{getchar();
char *a=new char[n];
int i;
for( i=0;i>a[i];
int ret=prool(a,n);
cout<<"ret:"<
括號匹配 棧 C
描述 假設表示式中只包含三種括號 圓括號 方括號和花括號,它們可相互巢狀,如 或 等均為正確的格式,而 或均為不正確的格式.輸入一串括號 如果輸入的右括號多餘,輸出 extra right brackets 如果輸入的左括號多餘,輸出 extra left brackets 如果輸入的括號不匹配,輸...
括號匹配 棧
蒜頭君在紙上寫了乙個串,只包含 和 乙個 能唯一匹配乙個 但是乙個匹配的 必須出現在 之前。請判斷蒜頭君寫的字串能否括號完全匹配,如果能,輸出配對的括號的位置 匹配的括號不可以交叉,只能巢狀 一行輸入乙個字串只含有 和 輸入的字串長度不大於 50000 如果輸入括號不能匹配,輸出一行 no 否則輸出...
棧括號匹配
input 輸入包括多組測試資料,每組資料是乙個字串,字串只包含 等字元。output 對於每組資料輸出 yes 表示當前字串中的括號是匹配的,否則輸出 no 不包括引號 sampleinput sampleoutput yes no題解 利用棧 includeusing namespace std...