Я пытаюсь выучить некоторые основы о связанных списках, поэтому я решил создать некоторый код.К сожалению, я дал конструктору следовать.
До сих пор я создал все методы, которые хотел.К сожалению, похоже, что моя вставка не работает, поэтому я даже не могу проверить, работают ли другие методы.Ofc роль метода вставки заключается в добавлении числа в отсортированный список L. Этот номер должен быть помещен перед первым номером, если он больше или в конце списка, если такого числа нет.
#include <iostream>
#include <cassert>
using namespace std;
struct lnode
{
int key;
lnode* next;
lnode(int k, lnode* n=nullptr):key(k),next(n){}
};
void insert( lnode* &L, int x)
{
while(L)
{
if(x >= L->key)
{
L = L->next;
}
else
{
lnode* temp = L;
L = new lnode(x, nullptr);
L->next = temp;
break;
}
}
}
int main()
{
lnode* t = nullptr;
insert(t,3);
insert(t,4);
insert(t,1);
insert(t,7);
insert(t,-4);
insert(t,9);
insert(t,2);
while(L) {
std::cout << L->key << " ";
}
}
* 1005Что я ожидаю?Я ожидаю увидеть элементы моего списка.На данный момент ничего нет.Нет ошибок, нет результатов.