das mag eine dumme Frage sein, aber ich möchte die Komplexität eines meiner Algorithmen berechnen, und ich bin mir nicht sicher, welche Komplexität für die memmove() Funktion zu berücksichtigen ist.Sollte ich memmove() O (n) oder O (1) betrachten?
Können Sie mir bitte helfen/erklären?
void * memmove (void * destination, const void * source, size_t num);
So ist die Komplexität O (num) oder O (1). Ich nehme an, es ist O (num), aber ich bin mir nicht sicher, da mir momentan das Verständnis fehlt, was unter der Haube passiert.
Die richtige Antwort ist wahrscheinlich, dass es implementierungsabhängig ist. Sie können sich ein ungewöhnliches System vorstellen, in dem Speicher wirklich ein komplexes Diagramm oder eine verkettete Liste ist. In jedem realen System ist mir bewusst, dass es proportional zu num ist. –