Как отсортировать односзвязный список(linked list)?
#include <stdio.h>
#include <stdlib.h>
typedef struct t_list{
int hour;
int minute;
struct t_list *next;
}t_list;
t_list *create_node(int set_hour, int set_minute){
t_list *node=(t_list *)malloc(sizeof(t_list));
node->hour=set_hour;
node->minute=set_minute;
node->next=NULL;
return node;
}
void push_front(t_list **list, int set_hour,int set_minute){
t_list *new_element=create_node(set_hour, set_minute);
new_element -> next = *list;
*list=new_element;
t_list* head = create_node(1, 2);
}
int main() {
t_list *list = create_node(1,3);
push_front(&list, 3, 11);
push_front(&list, 31, 13);
push_front(&list, 32, 11);
push_front(&list, 3, 11);
while (list!=NULL){
printf("hour = %d, minute=%d\n", list->hour, list->minute);
list=list->next;
}
return 0;
}
Как его можно отсортировать, может есть какие-нибудь встроенные функции в си для этого.