Hi, does anyone knows which is the computational cost of getting the rank of a matrix through the rank(M) command? (It would be extremelly usefull to have the order of the command using the Big O notation.
Thank you in advance!
Nicolas

 Akzeptierte Antwort

Shanmukha Voggu
Shanmukha Voggu am 3 Dez. 2021
Bearbeitet: Shanmukha Voggu am 3 Dez. 2021

0 Stimmen

Hi Nicholas,
The Computational Complexity of the rank function is equal to svd function.
which is equal to O(max(m, n) * min(m, n)^2), where m and n are number of rows and columns of the matrix respectively
Refer this for more information.

5 Kommentare

Nicolas Mira Gebauer
Nicolas Mira Gebauer am 3 Dez. 2021
That helped a lot, thanks!
Christine Tobler
Christine Tobler am 3 Dez. 2021
Hi, I just realized I got that wrong in the Answers post you were referring to: The complexity is actually
O(max(m, n) * min(m, n)^2)
That is, for a square n-by-n matrix the complexity of RANK is cubic in n.
Shanmukha Voggu
Shanmukha Voggu am 3 Dez. 2021
Thanks for the information, I edited my answer to show up right complexity
Nicolas Mira Gebauer
Nicolas Mira Gebauer am 6 Dez. 2021
Thank you both for the clarification!
Walter Roberson
Walter Roberson am 6 Dez. 2021
I was wondering! max(m, n) *min(m, n) as was posted before is the same as m*n, and I couldn't figure out why someone would bother writing it the long way!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte

Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by