// 順序棧的基本操作
#include
#include
using namespace std;
#define ok
1#define error
0#define overflow-2
#define maxsize
50// 儲存空間的初始分配數量
typedef int status;
// 返回函式狀態值
typedef char selemtype;
// 元素型別
typedef struct sqstack;
// 初始化順序棧
status initstack
(sqstack &s)
// 入棧
status push
(sqstack &
s, selemtype e)
// 出棧
status pop
(sqstack &
s, selemtype &e)
// 獲取順序棧的棧頂元素
char gettop
(sqstack s
)int main()
else
cout <<
"順序棧已初始化失敗.\n"
;break
;case2:
if(flag)
} cout <<
"\n\n";}
else
file.
close()
;}break
;case3:
if(flag !=-1
&& flag !=0)
cout <<
"棧頂元素為:"
<<
gettop(s
)<< endl << endl;
else
cout <<
"棧中無此元素,請重新選擇:\n\n\n\n"
;break
;case4:
cout <<
"依次出棧元素為:\n"
;while
(pop(s
, t)
) cout << endl;
break;}
}return0;
}
c 鏈棧的基本操作案例(檔案)
鏈棧的基本操作 include include using namespace std define ok 1 define error 0 define overflow 2 typedef int status typedef char selemtype 定義鏈棧型別 typedef stru...
c 迴圈佇列基本操作案例
迴圈佇列其實是為了解決順序棧的假溢位。設佇列大小是m。這裡特別提出一點就是計算佇列長度 q.rear q.front maxqsize maxqsize 此處說明原因,因為此處為迴圈佇列。因為迴圈佇列中,當q.rear的值小於q.front時,他們的差是負數要加上佇列最大長度才是佇列的長度,而如果他...
C 順序棧基本操作
1 include 2 define stacksize 50 設棧中元素個數為50個 3using namespace std 45 struct seqstack6 1011 構造乙個空棧 12 void initstack seqstack s 1316 17 將x置入s棧新棧頂 18 boo...