У меня есть связанный список узлов, каждый узел определяется как:
struct Node {
char name[14];
int counts[130];
char gender;
Node *nextPtr;
};
Я копирую этот связанный список со следующим кодом:
// Create a copy of the current list
Node *tempPtr;
while (headPtr != NULL) {
tempPtr = new Node;
tempPtr = headPtr;
// Advance the list
headPtr = headPtr->nextPtr;
} // End while loop
Мне нужно скопироватьсписок, чтобы я мог его отсортировать, я не хочу сортировать оригинальный список.Сортировка будет происходить по убыванию по значению в определенной позиции массива counts [].Мне интересно, может кто-нибудь сказать мне, правильно ли я копирую список?И если я могу иметь некоторое представление о том, как идти и сортировать этот список.Я написал это на Java без проблем, извиняюсь за то, что слишком мало знал о языке программирования c.Любой вклад будет принят с благодарностью.Спасибо.
Мои извинения, я должен написать это на языке программирования C ++.Однако я не могу использовать классы C ++.Я могу использовать только поток ввода-вывода C ++, опорные параметры и динамическое выделение памяти.
Моя главная цель здесь - составить список указателей на существующие узлы, а затем отсортировать его, не копируя узлы и не нарушаяОригинальный список.