Pagini recente » Cod sursa (job #1745799) | Cod sursa (job #1905097) | Cod sursa (job #613158) | Cod sursa (job #3255466) | Cod sursa (job #956917)
Cod sursa(job #956917)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct list_node
{
int value;
struct list_node *next;
} node;
node *root;
node *create_node(int value)
{
node *new_node = malloc(sizeof(node));
new_node -> value = value;
new_node -> next = NULL;
return new_node;
}
node *insert(node *curr, int curr_val)
{
if (curr == NULL)
return create_node(curr_val);
if (curr -> value <= curr_val)
curr -> next = insert(curr -> next, curr_val);
else
{
node *new_node = create_node(curr_val);
new_node -> next = curr;
return new_node;
}
return curr;
}
void print_list(node *curr)
{
if (curr == NULL)
return ;
printf("%d ", curr -> value);
print_list(curr -> next);
}
int main()
{
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
int n, i, x;
scanf("%d", &n);
for (i = 0; i < n; i++)
{
scanf("%d", &x);
root = insert(root, x);
}
print_list(root);
printf("\n");
return 0;
}