在C中的单链接列表上使用InsertionSort

时间:2019-06-02 18:38:29

标签: c sorting linked-list singly-linked-list insertion-sort

我有一个作业,必须在C中的单链接列表上使用insertSort算法。已经提供了用于插入和打印列表的功能。

struct le{
int value;
struct le *next;
};
typedef struct le listenelement;
typedef listenelement *list;
void insert(int v, list *l){
    listenelement *new;
    new = malloc(sizeof(listenelement));
    new->value = v;
    new->next = *l;
    *l = new;

因此,我尝试了很多次,并且尝试了不同的版本,但从未奏效。这是我到目前为止的内容:

void sort(list *l, int m){
  struct le *list = NULL;
  struct le *m = *l;
  while(m != NULL){
    struct le *next = m->next;
    insert(&list, m);
    m = next;
  }
  *l = list;
}

m是(正含0)数字的参数。如果m为负数,则应忽略负号,并且仍由insertSort算法排序。 目前,主要问题是insertSort算法本身和负数较少。

0 个答案:

没有答案