首页 > 代码库 > Double Circular Sorted Linked List Insert

Double Circular Sorted Linked List Insert

void Insert(LinkedList * &start, int val){    LinkedList * cur = start;    if (start == NULL)    {        auto l = new LinkedList(val);        l->pre = l        l->next = l        start = l        return;    }    int cycle = 0;    do    {        if (val < cur->val ||(cycle == 1 && cur == start))        {            auto l = new LinkedList(val);            cur->pre->next = l;            l->next = cur;            l->pre = cur->pre;            cur->pre = l;            if (cur == start)                start = l;            inserted = true;            return ;        }        cur = cur->next;        if(cur == start)        {            ++cycle;        }    } while (true);}

  

Double Circular Sorted Linked List Insert