У меня небольшие проблемы с упорядочением указанных значений.Прямо сейчас, входной файл:
347 490 950 779 911 825 215 584 355 266 301 458 381 13 577 835
Но я получаю:
835 577 13 381 458 301 266 355 584 215 825 911 779 950 490 347
Как бы я отсортировал их, используя мой код в Insert () в порядке возрастания?
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
// Node for building our linked list.
struct NodeTag {
int value;
struct NodeTag *next;
};
typedef struct NodeTag Node;
Node *insert( Node *head, int val )
{
Node *n = (Node *)malloc(sizeof(Node));
n->value = val;
n->next = head;
return n;
}
int main()
{
Node *head = NULL;
int x;
while ( scanf( "%d", &x ) == 1 ){
head = insert( head, x );
}
for(Node *n = head; n; n = n->next) {
printf("%d ", n->value);
}
printf("\n");
while(head) {
Node *next = head->next;
free(head);
head = next;
}
return 0;
}
Любая помощь будет оценена.Спасибо!