Boa tarde,
comecei a estudar sobre HeapSort na faculdade mas ao invés de olhar o código na internet, resolvi começar criando minha própria versão.
O primeiro passo foi pegar uma arvore binaria desordenada representada em um vetor e tentar ordena-la, transformando-a em um Heap Maximo. Criei três funções (verificar se o heap é maximo , trocar duas posições do vetor e a função principal que invoca as duas anteriores) e elas parecem funcionar, mas depois quando imprimo os valores , eles não estão alterados( digo que parecem funcionar porque quando debuguei, verifiquei as mudanças de valores nos indices do vetor). Alguém poderia me dar uma ajuda sobre o que estou fazendo errado ? Tenho a impressão que está relacionado com ponteiros.
Muito Obrigado
Rodolfo.
heapforum.txt