일상다반사 로그

C 최대히프 삽입 본문

IT/C,C#

C 최대히프 삽입

일상다반사로그 2017. 10. 20. 19:52
반응형

#include <stdio.h>
#include <stdlib.h>


#define MAX_ELEMENTS 200
#define HEAP_FULL (n) (n = MAX_ELEMENTS -1)
#define HEAP_EMPTY (n) (!n)
int n =0;
typedef struct{
 int key;
}element;
element heap [MAX_ELEMENTS];

void push(element item, int *n);

void main(){
 
 int i=0;
 element item;
 while(i<8){
  printf("PUSH:");
  scanf("%d",&item);
  push(item, &n);
  i++;
 }
 
 for(i = 0; i<=8; i++){
  printf(" %2d ", heap[i]);
 }
}

void push(element item, int *n){

 int i;

 i = ++(*n);
 while(( i != 1) && ( item.key > heap[i/2].key)){
  heap[i] = heap[i/2];
  i /=2;
 }
 heap[i]= item;
}


네이버 블로그를 운영 하지 않는 관계로 티스토리 블로그로 이전하였습니다.

반응형

'IT > C,C#' 카테고리의 다른 글

로봇C 미로찾기  (0) 2017.11.14
로봇 C 터치 센서  (0) 2017.11.13
C언어 마름모  (0) 2017.10.23
C연결리스트 - 큐  (0) 2017.10.19
C 연결리스트 - 스택  (0) 2017.10.18
Comments