Ich habe 2 Funktionen, C (n) und A (n)Kann nicht Wachstumsrate um
Ich weiß nicht, warum definieren A (n) ist langsamer als C (n) da höhere Wachstumsrate bedeutet langsamere Laufzeit.
Aus meiner Sicht haben beide Wurzel im Zähler. Jedoch wird A (n) durch logn geteilt, was bedeutet, dass es kleiner als root n sein sollte. Daher wird das ganze A (n) schneller als C (n), da C (n) immer noch die Wurzel n hat (obwohl es n^1/3 ist, aber immer noch die Wurzel hat) und nicht durch irgendetwas geteilt ist.
Gibt es eine sehr einfache Möglichkeit, die Wachstumsrate zu definieren?
Vielen Dank, wenn Sie erklären können, warum A (n) langsamer ist als C (n).
* "Ich weiß nicht, warum A (n) langsamer ist als C (n), weil höhere Wachstumsrate bedeutet langsamere Laufzeit." * - Nicht unbedingt. Angenommen, die Komplexität von A (n) ist 1000000 * n und die Komplexität von B (n) ist n^3. A (n) ist begrenzt, aber es hat eine sehr große Konstante. [B (n) übertrifft A (n) für n <1000] (https://www.symbolab.com/solver/equation-calculator/1000000n%20%3C%3D%20n%5E%7B3%7D). Wenn Sie etwas über Ihr Dataset wissen, können Sie einen asymptotisch langsameren Algorithmus auswählen und trotzdem in einigen Fällen eine bessere Leistung erzielen. – jww
Ich stimme für das Schließen dieser Frage als Off-Topic ab, da das zugrunde liegende Problem [Math.se] ist. – Dukeling
Oder vielleicht ist es nur ein Duplikat von [Was ist eine einfache englische Erklärung der "Big O" Notation?] (Https://stackoverflow.com/questions/487258/what-is-a-plain-english-explanation-of- Big-O-Notation) (Big O? Big Theta? Nah genug). Oder es ist wahrscheinlich eine Kombination aus Off-Topic und Duplikat. – Dukeling