棧和隊列是兩種常用的、重要的數據結構。
棧和隊列是限定插入和刪除只能在表的 “端點” 進行的線性表。
普通線性表的插入:如果插入位置未在最后,則需要移動元素
在刪除時,如果刪除位置不是最后一個,則需要在刪除后進行元素遷移。
棧:后進先出
隊列:先進先出
棧就是具有后進先出的特性 ,使得棧稱為程序設計中的有用工具。另外,如果問題求解的過程具有“后進先出”的天然特性的話,則求解的算法中必然需要利用“棧”。
如:數值轉換,

由於隊列操作具有先進先出的特性,是的隊列成為程序設計中解決類似排隊問題的有用工具
脫機打印輸出:按申請的先后順序依次輸出
多用戶系統中,多個用戶排成隊,分時地循環使用CPU和主存
按用戶的優先級排成多個隊,每個優先級一個隊列
實施控制系統中,信號按接收的先后順序依次處理
網絡電文傳輸,按到達的時間先后順序依次進行
棧和隊列是限定插入和刪除,只能在表的“端點”進行的線性表
