/************ 1 2 3 4 如棧 出棧 3 2 4 1 返回0 錯誤 3 1 2 4 返回-1 **********/ #include#include #include using namespace std; bool judge(const char *push_seq, const char *pop_seq) { if (NULL == push_seq || NULL == pop_seq) { return false; } if (strlen(push_seq) != strlen(pop_seq)) { return false; } stack sc; while (*push_seq) { if (0 == sc.size() || sc.top() != *pop_seq) { sc.push(*push_seq++); // } else { sc.pop(); ++pop_seq; // } } while (sc.size()) { if (sc.top() != *pop_seq++) { return false; } sc.pop(); } return true; } int mycheck1(int a[],int n) { stack s; int i,j,k=1; // 3 2 4 1 for(i=0;i k) { for(j=k;js; s.push(0); int i,j,k=1; //BUG段 經(jīng)過分析 在于s.top段 因為沒有元素時這樣做有越界的含義 for(i=0;i k) { for(j=k;j
名稱欄目:小代碼棧之合法性一點思路不一樣的際遇
本文鏈接:http://weahome.cn/article/jdsscg.html