Advertisement
steverobinson

Steve Robinson

Aug 25th, 2010
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.30 KB | None | 0 0
  1. //Program to Implement Priority Queue using Min Heap
  2. #include <stdio.h>
  3. #include <conio.h>
  4. #define maxsize 20
  5.  
  6. int elements[30],size=0;
  7. void display()
  8. {
  9.     int i;
  10.     for(i=1;i<=size;i++)
  11.     {
  12.         printf("\n%d",elements[i]);
  13.     }
  14. }
  15. void insert (int x)
  16. {
  17.     int i;
  18.     if(size==0)
  19.         {
  20.             size++;
  21.             elements[1]=x;
  22.         }
  23.     else  if(size==maxsize)
  24.             printf("\nQueue Full!");
  25.     else
  26.         {
  27.             for(i=++size;elements[i/2]>x&&i/2!=0;i=i/2)
  28.                 elements[i]=elements[i/2];
  29.             elements[i]=x;
  30.             //printf("%d",size);
  31.         }
  32.  
  33. }
  34. int  main()
  35. {
  36.     int temp,ch;
  37.     menu:
  38.     printf("\nMenu:\n1. Insert Elements\n2. Display Heap\n3. Exit\nEnter Choice.....");
  39.     scanf("%d",&ch);
  40.     switch(ch)
  41.     {
  42.         case 1:
  43.         do{
  44.             printf("\nEnter the element: ");
  45.             scanf("%d",&temp);
  46.             insert(temp);
  47.             printf("\nInsert More ? Yes (1) No (0)...");
  48.             scanf("%d",&ch);
  49.             }while(ch);
  50.         break;
  51.  
  52.         case 2:
  53.         display();
  54.         break;
  55.  
  56.         case 3:
  57.         printf("\nThank You!");
  58.         getch();
  59.        return 0;
  60.  
  61.         default:
  62.         printf("\nInvalid choice!\n");
  63.         goto menu;
  64.     }
  65.     goto menu;
  66.  
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement