(1) In programming, an area of
memory reserved for data that is created at
runtime -- that is, when the
program actually
executes. In contrast, the
stack is an area of memory used for data whose size can be determined when the program is
compiled.
(2) A special type of binary tree in which the value of each node is greater than the values of its leaves. A heap sort algorithm works by first organizing a list of data into a heap.