Member 13616463 Ответов: 3

Что лучше-перезаписать данные или изменить указатели ?


При выполнении алгоритма сортировки , такого как сортировка вставки в одном связанном списке, лучше ли выполнять его с помощью изменения указателей или просто перезаписи данных ?

Что я уже пробовал:

Я составил код для них обоих .

3 Ответов

Рейтинг:
26

OriginalGriff

Зависит.
Как правило, замена указателей будет более эффективной, поскольку они обычно короче данных, на которые ссылаются, и обычно имеют размер "машинного слова", поэтому аппаратные средства, такие как системы памяти, кэши и т. д., оптимизируются для этого размера.

Но если вы имеете дело с тривиальными длинами данных, то копирование может иметь смысл. Хотя, вероятно, нет, поскольку существуют дополнительные накладные расходы на выделение "запасной" памяти для копирования данных.


Рейтинг:
2

Patrice T

Цитата:
Что лучше-перезаписать данные или изменить указатели ?

меняйте указатели !
В этом вся причина существования связанных списков.
Связанный список - Википедия[^]


Рейтинг:
0

RickZeeland

В дополнение к хорошему ответу Гриффа, вот хорошая статья о сортировке: Визуализация и сравнение алгоритмов сортировки на языке Си#[^]