'radix sort'에 해당되는 글 1건

LSD기수정렬

#define MAX_DIGIT 3
#define RADIX_SIZE 10
typedef struct list_node* list_pointer;
typedef struct list_node{
 int key[MAX_DIGIT];
 list_pointer link;
};

list_point radix_sort(list_pointer ptr){
 list_point front[RADIX_SIZE],rear[RADIX_SIZE];
 int i,j,digit;
 for(i=MAX_DIGIT-1; i>=0; i--){
  for(j=0; j<RADIX_SIZE; j++)
   front[j]=rear[j]=NULL;
  while(ptr){
   digit=ptr->key[i];
   if(!front[digit])
    front[digit]=ptr;
   else
    rear[digit]->lik=ptr;
   rear[digit]=ptr;
   ptr=ptr->link;
  }
  prt=NULL;
  for(j=RADIX_SIZE-1; j>=0;j--)
   if(front[j]){
    rear[j]->link=ptr; ptr=front[j];
   }
 }
 return ptr;
}

블로그 이미지

百見 이 不如一打 요 , 百打 가 不如一作 이다.

,