Hi,
I have to write a program that creates a 'priority queue'.
I'ts something from datastructures,i've no clue how too explain that here.
Just hopeing my code makes some sense.
I'ts not compiling im getting a lot of errors.
thanks
Code:
#include <stdio.h>
#define SIZE 10
/*prototype statements*/
void buildHeap(int *array,int SIZE);
int insertHeap(int *array,int *last,int data);
void reheapUp(int *array,int index);
int getPriority(void);
int getData(void);
int array[SIZE];
int main(void){
int i,data,priority,ans;
buildHeap(array,SIZE);
for(i=0,i<=SIZE;i++){
priority = getPriority(void);
data = getData(void);
ans = insertHeap(array,&i,priority);
}
}
void buildHeap(int *array,int SIZE){
int walker = 1;
loop(walker <= SIZE){
reheapUp(array,walker);
walker++;
}
}
int insertHeap(int *array,int *last,int data){
int index;
if (*last >= SIZE){
return 0;
}
index = *last++;
array[index] = data;
reheapUp(array,index);
return 1;
}
void reheapUp(int *array,int index){
int parent,hold;
if(index){
parent = (index - 1)/ 2;
if(array[index] > array[parent]){
hold = array[parent];
array[parent] = array[index];
array[index] = hold;
reheapUp(array,parent);
}
}
}
int getpriority(void){
int pri;
printf("Enter the priority");
scanf("%d",&pri);
return pri;
}
int getData(void){
int dat;
printf("Enter the data");
scanf("%c",&dat);
return dat;
}