Я пытался создать функцию для создания кучи Max.Проблема с рекурсией, но я не знаю, как это исправить
#include<stdio.h>
#include<stdlib.h>
void heapify(int,int);
int heap[10];// Globally declared the heap array
//Passing a number and its index as the parameter in function
void heapify(int num,int index){
int parentIndex,temp;
if(index==0)
{
heap[index]=num;
return;
}
if(index%2!=0){
parentIndex=index/2;//Check for Left child
}
else if(index%2==0){
parentIndex=index/2-1;//Check for right child
}
while(heap[parentIndex]<num&&index>0)
{
temp=heap[parentIndex];
heap[parentIndex]=num;
heap[index]=temp;
heapify(num,parentIndex);
}
}