-1
나는 다음과 같이 링크 된 목록에 두 개의 노드를 교체하려고 :스와핑 연결리스트 요소
void swapTwo(course*& first, course*& second)
{
auto temp = first;
first = second;
second = temp;
second->next = first->next; // error right here due to self-referencing
first->next = second;
}
나는 오류를 가지고 2 ~ 때문에> 다음 이미 자체 참조입니다. 이것에 우아한 해결책이 있습니까? 나는 2 과목의 요소를 만들고 첫 번째와 두 번째를 재구성 할 수 있지만 너무 짐승 같다. 감사!
노드의 데이터 요소의 크기는 어느 정도입니까? 간단히'std :: swap (first-> data, second-> data);' – user4581301
이 작업을하려면 이전 노드에 액세스해야합니다. 이것을 이중으로 연결된 링리스트로 바꾸면 많은 문제를 줄일 수 있습니다. – PythEch
여러분 (그리고 숙녀가 있다면), 나는 벡터로 변환, 정렬 및 다시 변환하면 많은 문제를 줄일 것이라고 생각했습니다. 진심으로 감사드립니다. – CaTx