in matlab coding how to write Big-O notation
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
lokireddy sarala
le 9 Jan 2018
Réponse apportée : lokireddy sarala
le 17 Mar 2018
e=O(log(n))
0 commentaires
Réponse acceptée
Walter Roberson
le 9 Jan 2018
MATLAB in general has no concept of Big-O notation, and cannot compute it or use it.
The closest that MATLAB gets to this is that inside the MuPAD symbolic engine, series are represented with an order term, such as
1 + x + x^2/2 + x^3/6 + x^4/24 + x^5/120 + O(x^6)
This is related to big-O notation in that both have to do with order approximations, but the symbolic engine use does not have to do with code complexity in either time or space.
5 commentaires
Walter Roberson
le 1 Fév 2018
When lamda is 2 or more and t is > 1, then your formula gives a complex result.
"but i need code for Big-O and Small o notations in matlab."
There is no code for that. They are theoretical analysis, not something that can be easily computed.
Walter Roberson
le 1 Fév 2018
I see from https://en.wikipedia.org/wiki/Big_O_notation#Family_of_Bachmann%E2%80%93Landau_notations that in Small-O notation, o(g(n)) means "f is dominated by g asymptotically" and that there is a formal limit involved, lim n->0 f(n)/g(n) = 0.
In order prove such a thing in MATLAB, you would need to have the formula f(n) and g(n), and you would need to use the symbolic toolbox to take limit(f(n)/g(n), n, inf) and show that it was 0. This is not always practical to do by the symbolic toolbox but it does work sometimes. But proving that g(n) is the "smallest" function with this property requires mathematical analysis that is difficult to impossible to do through symbolic computations.
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Special Values dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!