Thursday, August 27, 2009

Fibonacci Search - 2



# include<stdio.h>



# include<conio.h>




void

hsort();




void

main()



{



int a[50],r,p,i,n;



clrscr();



printf("\n\n\t\tHEAP
SORT\n\t\t~~~~~~~~~"
);



printf("\n\t\t\tINPUT\n\t\t\t--------");



printf("\nENTER
THE NUMBER OF ITEMS:"
);



scanf("%d",&n);



printf("\n\nENTER
THE NUMBERS: "
);



for(i=1;i<=n;i++)



scanf("%d",&a[i]);



for(i=n/2;i>=1;i--)



hsort(i,n,a);



for(i=n-1;i>=1;i--)



{



r=a[i+1];



a[i+1]=a[1];



a[1]=r;



hsort(1,i,a);



}



printf("\n\t\t\tOUTPUT\n\t\t\t-------\n");



for(i=1;i<=n;i++)



printf("\t%d",a[i]);



getch();



}




void

hsort(i,n,a)




int

i,n,a[50];



{



int p,m;



p=a[i];



m=2*i;



while(m<=n)



{



if((m<n)&&(a[m]<a[m+1]))



m++;



if(p>a[m])



goto
ab;



a[m/2]=a[m];



m=2*m;



}



ab:



a[m/2]=p;



}





No comments:

Post a Comment