class Stack:
    S       # 管理元素的陣列
    top     # 指向堆疊頂端的箭頭

    init():
        top ← -1     # 初始化堆疊

    push(x):
        S[++top] ← x # 先將 top 加 1 後指向的元素指定為 X

    pop():
        return S[top--]   # 傳回 S[top] 後,再將 top 減 1

    peak()
        return S[top]     # 傳回 S[top]

    empty():
        return top = -1   # 若 top 為 -1,表示為空堆疊

    size():
        return top + 1    # 若 top 加 1


# 模擬演算法動畫中的堆疊操作

Stack st() 
st.push(8)
st.push(6)
st.push(7)
st.pop()
st.push(5)
st.pop()