堆積(英語:Heap)是電腦科學中的一種特別的樹狀資料結構。若是滿足以下特性,即可稱為堆積:「給定堆積中任意節點 P 和 C,若 P 是 C 的母節點,那麼 P 的值會小於等於(或大於等於) C 的值」。若母節點的值恆小於等於子節點的值,此堆積稱為最小堆積(英語:min heap);反之,若母節點的值恆大於等於子節點的值,此堆積稱為最大堆積(英語:max heap)。在堆積中最頂端的那一個節點,稱作根節點(英語:root node),根節點本身沒有母節點(英語:parent node)。
堆積始於 J._W._J._Williams 在 1964 年發表的堆積排序(英語:heap sort),當時他提出了二元堆積樹作為此演算法的資料結構。堆積在戴克斯特拉演算法(英語:Dijkstra's algorithm)中亦為重要的關鍵。
在佇列中,排程程式反覆提取佇列中第一個作業並執行,因為實際情況中某些時間較短的任務將等待很長時間才能結束,或者某些不短小,但具有重要性的作業,同樣應當具有優先權。堆積即為解決此類問題設計的一種資料結構。