Тема: Парсинг рядка в зв'язаний список
Потрібно перетворити рядок (наприклад, "1 -> 2 -> 3 -> nullptr") на зв'язаний список.
Це звідси https://www.codewars.com/kata/582c5382f000e535100001a7
Зробив ось так:
class Node {
public:
int data;
Node* next;
Node(int data, Node* next = nullptr)
: data(data)
, next(next)
{
}
};
Node* parse(const std::string& s)
{
Node* head { nullptr };
Node* cur { nullptr };
stringstream ss;
ss << s;
string temp { "" };
int number;
while (!ss.eof()) {
ss >> temp;
if (stringstream(temp) >> number) {
if (!head) {
head = new Node(number);
cur = head;
} else {
cur->next = new Node(number);
cur = cur->next;
}
}
temp = "";
}
cur = cur->next;
delete cur;
return head;
}
Але десь протікає, не можу зрозуміти де.
Клас Node — це їхній клас, з яким треба працювати.