Um heap pode ser implementado como um array (digamos H[1,2,...,n] gravando seus elementos de cima para baixo, da esquerda para a direita. É conveniente armazenar os elementos do heap nas posições de 1 a n de tal array, deixando H[0] sem uso ou colocando ali uma sentinela cujo valor é maior que todos os elementos do heap. Em tal representação, a. as chaves do nó parental estarão nas primeiras n/2 posições do array, enquanto as chaves folha ocuparão as últimas n/2 posições.