#include
#define maxsize 100
typedef struct sequence_stack;
void init(sequence_stack *st)//棧的初始化
int empty(sequence_stack st)//判斷棧是否為空
char read(sequence_stack st)//讀取棧頂元素
void push(sequence_stack *st, char x)//插入元素
st->a[st->top] = x;
st->top = st->top+ 1;
}void dele(sequence_stack *st)//刪除棧頂元素
st->top= st->top- 1;
}int match(char c)
': if (read(s) == '
else
return 0;
case ']': if (read(s) == '[')
else
return 0;
case ')': if (read(s) == '(')
else
return 0;
}++i;
}return empty(s);
}void main()
' || ch == ']' || ch == ')')
else
if (ch == '#')
}c[i] = '\0';
int j = 0;
printf("輸入的內容是:");
for (; c[j] != '\0'; j++)
printf("%c ", c[j]);
printf("\n");
int q = match(c);
if(q==1)
printf("所輸入的括號能夠匹配\n");
if (q == 0)
printf("所輸入的括號不能匹配\n");
}
順序棧的應用括號匹配問題
利用程式設計檢查這一串字元中的 是否匹配 解決思路 利用棧將字串的 的時候取出一位來和棧頂判斷是否相等。充分利用棧空間的特點。include define m 100 using namespace std typedef struct stack stacktype 別名設定 bool judge...
棧應用 括號匹配
假設表示式中允許包含兩種括號 圓括號和方括號。編寫乙個演算法判斷表示式中的括號是否正確配對。由括號構成的字串,包含 如果匹配輸出yes,否則輸出no。複製 yes解決思想 拿到字串後,遍歷字串,當遇到左括號就進棧,右括號棧頂元素出棧,如果括號是匹配的,則最終棧空。include includetyp...
棧的應用 括號匹配
3.1棧的應用 括號匹配 一 實驗目的1 掌握堆疊特殊線性表的儲存方式的基本操作方法。2 掌握堆疊後進先出運算原則在解決實際問題中的應用。3 掌握使用棧的原理來解決表示式中的括號配對問題。二 實驗內容 假設乙個算術表示式中包含圓括弧 方括弧三種型別的括弧,編寫乙個程式用於判別表示式中括弧是否正確配對...