#include <stdio.h>
#include <stdlib.h>
typedef struct node *link;
struct node{
int item ;
link next;
};
void visitData(link x){
link t;
for( t=x ; t != NULL ; t = t -> next)
printf("%d\n",t->item);
}
void createSortedLink(int length){
struct node heada , headb;
link t, u, x, a = &heada, b;
int i;
for ( i = 0 , t = a ; i <length ; i++){
t -> next = (link)malloc(sizeof *t);
t = t -> next ;
t -> next = NULL;
t -> item = rand() % 1000;
}
visitData(a);
printf("----------------");
b = &headb ; b->next = NULL;
for(t = a->next; t != NULL; t = u ){
u = t->next;
for(x = b; x->next !=NULL; x = x->next)
if(x->next->item > t->item)break;
t->next = x->next; x->next = t;
}
visitData(b);
}
main(){
createSortedLink(8);
}