Lassen Sie uns sagen, ich habe diese Funktion: (Haskell Syntax)Berechnung der Arbeit von f getan x = (x, x)
f x = (x,x)
Was ist die Arbeit (Berechnungsmenge) durch die Funktion ausgeführt?
Zuerst dachte ich, es sei offensichtlich konstant, aber was ist, wenn der Typ von x
nicht endlich ist, was bedeutet, dass x eine beliebige Menge an Speicher aufnehmen kann? Man müsste die Arbeit berücksichtigen, die durch das Kopieren von x
gemacht wurde, oder?
Dies führte zu der Annahme, dass die von der Funktion geleistete Arbeit in der Größe der Eingabe tatsächlich linear ist.
Diese für sich nicht Hausaufgaben, aber kam, als ich die Arbeit von der Funktion getan definieren musste:
f x = [x]
, die ein ähnliches Problem hat, glaube ich.
gute Frage für http://cs.stackexchange.com/ – FlavorScape
Sollte ich es verschieben? (Vorausgesetzt, ich kann, ich bin nicht wirklich vertraut mit der Website) – Guido
@Guido Sie können es nicht verschieben, obwohl es nicht möglich ist, es an das Ziel zu verschieben, denke ich, dass es auch passt. IMHO ist es das Beste, es hier zu lassen. – fuz