资料来源 : pyDict
堆;大量,许多堆,堆积起
资料来源 : Webster's Revised Unabridged Dictionary (1913)
Heap \Heap\, n. [OE. heep, heap, heap, multitude, AS. he['a]p;
akin to OS. h?p, D. hoop, OHG. houf, h?fo, G. haufe, haufen,
Sw. hop, Dan. hob., Icel. h?pr troop, flock, Russ. kupa heap,
crowd, Lith. kaupas. Cf. {Hope}, in Forlorn hope.]
1. A crowd; a throng; a multitude or great number of persons.
[Now Low or Humorous]
The wisdom of a heap of learned men. --Chaucer.
A heap of vassals and slaves. --Bacon.
He had heaps of friends. --W.Black.
2. A great number or large quantity of things not placed in a
pile. [Now Low or Humorous]
A vast heap, both of places of scripture and
quotations. --Bp. Burnet.
I have noticed a heap of things in my life. --R. L.
Stevenson.
3. A pile or mass; a collection of things laid in a body, or
thrown together so as to form an elevation; as, a heap of
earth or stones.
Huge heaps of slain around the body rise. --Dryden.
Heap \Heap\, v. t. [imp. & p. p. {Heaped}; p. pr. & vb. n.
{Heaping}.] [AS. he['a]pian.]
1. To collect in great quantity; to amass; to lay up; to
accumulate; -- usually with up; as, to heap up treasures.
Though he heap up silver as the dust. --Job. xxvii.
16.
2. To throw or lay in a heap; to make a heap of; to pile; as,
to heap stones; -- often with up; as, to heap up earth; or
with on; as, to heap on wood or coal.
资料来源 : WordNet®
heap
n 1: a collection of objects laid on top of each other [syn: {pile},
{mound}, {cumulus}]
2: (often followed by `of') a large number or amount or extent;
"a batch of letters"; "a deal of trouble"; "a lot of
money"; "he made a mint on the stock market"; "it must
have cost plenty" [syn: {batch}, {deal}, {flock}, {good
deal}, {great deal}, {hatful}, {lot}, {mass}, {mess}, {mickle},
{mint}, {muckle}, {peck}, {pile}, {plenty}, {pot}, {quite
a little}, {raft}, {sight}, {slew}, {spate}, {stack}, {tidy
sum}, {wad}, {whole lot}, {whole slew}]
3: a car that is old and unreliable; "the fenders had fallen
off that old bus" [syn: {bus}, {jalopy}]
heap
v 1: bestow in large quantities; "He heaped him with work"; "She
heaped scorn upon him"
2: arrange in stacks; "heap firewood around the fireplace";
"stack your books up on the shelves" [syn: {stack}, {pile}]
3: fill to overflow; "heap the platter with potatoes"
资料来源 : Free On-Line Dictionary of Computing
heap
1. An area of memory used for {dynamic memory
allocation} where blocks of memory are allocated and freed in
an arbitrary order and the pattern of allocation and size of
blocks is not known until {run time}. Typically, a program
has one heap which it may use for several different purposes.
Heap is required by languages in which functions can return
arbitrary data structures or functions with {free variables}
(see {closure}). In {C} functions {malloc} and {free} provide
access to the heap.
Contrast {stack}. See also {dangling pointer}.
2. A data structure with its elements partially
ordered (sorted) such that finding either the minimum or the
maximum (but not both) of the elements is computationally
inexpensive (independent of the number of elements), while
both adding a new item and finding each subsequent
smallest/largest element can be done in O(log n) time, where n
is the number of elements.
Formally, a heap is a {binary tree} with a key in each {node},
such that all the {leaves} of the tree are on two adjacent
levels; all leaves on the lowest level occur to the left and
all levels, except possibly the lowest, are filled; and the
key in the {root} is at least as large as the keys in its
children (if any), and the left and right subtrees (if they
exist) are again heaps.
Note that the last condition assumes that the goal is finding
the minimum quickly.
Heaps are often implemented as one-dimensional {arrays}.
Still assuming that the goal is finding the minimum quickly
the {invariant} is
heap[i] <= heap[2*i] and heap[i] <= heap[2*i+1] for all i,
where heap[i] denotes the i-th element, heap[1] being the
first. Heaps can be used to implement {priority queues} or in
{sort} algorithms.
(1996-02-26)