Я пытаюсь создать круговой список из моего единственного связанного списка, который помещает числа в порядке возрастания, но, к сожалению, это не так хорошо получается. Кажется, что он делает список, но по какой-то причине он не помещает числа, введенные в порядке возрастания. Пожалуйста помоги.Как преобразовать односвязный список в круглый список
list::list()
{
head =NULL;
}
void list::insertElement(int element)
{
//ascending order
node *temp, *curr, *prev;
temp = new node;
temp->item = element;
for(prev = head, curr = head/*value set*/; (curr !=head)&&
(temp->item>curr ->item)/*condition*/;
prev = curr, curr = curr->next/*loop expression*/);
if (prev == head)
{
temp-> next = head;
head = temp;
}
else
{
temp -> next = curr;
prev -> next = temp;
}
}//end of function
Это страшная строка кода: 'для (= предыдущая голова, Прев = головы/* значение установлено * /; (ТОК = голова) && (TEMP-> элемент> ТОК -> пункт)!/* condition * /; prev = curr, curr = curr-> next/* выражение цикла * /); 'Никто не может легко понять, что это делает. –