Ich arbeite aus dem Lehrbuch CLRS-Algorithmen der 3. Auflage und in Kapitel 3 beginnt eine Diskussion über die asymptotische Notation, die mit beginnt Notation. Ich habe die anfängliche Definition von verstanden:
Aber dann sagt der Text auf der nächsten Seite:
Die Definition von erfordert, dass jedes Mitglied asymptotisch nicht negativ sein, das heißt, das nicht negativ sein, wann immer ist ausreichend groß. (Eine asymptotisch positive Funktion ist eine, die für alle ausreichend groß positiv ist.) Folglich muss die Funktion g (n) selbst asymptotisch nicht negativ sein, oder auch die Menge ist leer.
Der letzte Teil über das Wie, wenn die Funktion negativ ist, die Menge ist leer und die allgemeine Anforderung einer positiven Funktion ist irgendwie verwirrend. Kann da draußen jemand diese Definition für mich klarstellen und was sie bedeutet, möglich mit einem Beispiel, wäre es sehr dankbar.
quelle
Antworten:
Dies ist nur eine technische Frage. In der asymptotischen Analyse interessieren wir uns nur "wirklich" für positive Funktionen wien3 oder nlogn . Wenn wir jedoch sehr formal und allgemein sein wollen, könnten wir nicht positive Funktionen berücksichtigen (und das könnte sich als nützlich erweisen, siehe unten). Die Definition vonΘ besagt, dass f(n)=Θ(g(n)) wenn von irgendwann an, f(n)/g(n) wird von beiden Seiten durch Konstanten und darüber hinaus begrenzt g(n)≥0 . (Das erhalten Sie, wenn Sie die Definition abrollen.) Insbesondere wennf(n)=Θ(g(n)) dann von irgendwann an g ist nicht negativ.
Hier ist eine alternative Definition von großΘ . Annehmenf,g:N→N sind positive Funktionen, das heißtf(n),g(n)>0 . Dannf(n)=Θ(g(n)) wenn es positive Konstanten gibt c1,c2 so dass c1≤f(n)/g(n)≤c2 . Ich weiß nicht, warum die kompliziertere Definition in einleitenden Texten dargestellt wird.
Was sind die Vorteile der komplizierteren Definition? Es kann Funktionen verarbeiten, die einige nicht positive Werte haben (es muss eine endliche Anzahl von ihnen geben). Diese Definition enthält beispielsweise die (wahre) Aussagen−10=Θ(2n−30logn) . Obwohl Funktionen, die in der Praxis angetroffen werden, normalerweise positiv sind, können manchmal negative Funktionen auftreten: Nehmen wir zum Beispiel an, wir sind an einer wirklich komplizierten Funktion interessiertk und wir schätzen es von unten durch eine Funktion t , was jedoch für kleine negativ ist n .
quelle
"more complicated definition"
? Weil es benutztWarumΘ(g) kann leer sein
Es folgt direkt aus der Definition.
Der wichtige Teil hier ist folgender:f(n)|∃c1>0:0≤c1g(n)
Offensichtlich ist die Einschränkung auff (Ab sofort kommt es nicht einmal mehr darauf an f ), besagt, dass g multipliziert mit einer positiven Konstante c1 muss selbst positiv sein (für große Werte von n , impliziert von hier an ).
Natürlich, wenng ist nicht streng positiv, diese Einschränkung verhindert alle möglichen Funktionen f von einem Mitglied des Sets zu sein Θ(g) .
Daraus folgt, dass ein solcher Satz leer ist.
Für allef∈Θ(g) , f ist streng positiv
Dies folgt auch direkt aus demselben Teil der Definition:f(n)|⋯:0≤f(n)
Offensichtlich wennf ist nicht streng positiv, die Bedingung ist nicht erfüllt, daher keine solche f kann enthalten sein in Θ(g) .
Hinweis : Ich bin mir nicht ganz sicher, was für Sie unklar ist, da Sie nur "verwirrend" geschrieben haben.
quelle