如題,時間復雜度O(m+n)和O(max(m,n))是否可以認為等同?
uj5u.com熱心網友回復:
一個是m+n,一個是m或者n,當然不等uj5u.com熱心網友回復:
一個m+n,一個是max(m, n)即m, n中較大值。舉個例子,m = 8, n = 6;那么一個復雜度是14, 第二個復雜度是8。很明顯了吧
uj5u.com熱心網友回復:
要看m和n之間的關系,如果是線性的或者m是常數,可以認為等同,O(a*n+b),如果a、b是常數,也是O(n)復雜度,所以O(n)演算法不一定優于O(n^2)演算法,要看n的規模uj5u.com熱心網友回復:
其實這兩種都是O(n)級別的復雜度。uj5u.com熱心網友回復:
至少王道書上是這么說的。
uj5u.com熱心網友回復:
O(N) 代表這個時間復雜度是線性增長的,也就是輸入資料規模和耗費時間是線性關系O(max(m,n)) 和O(m+n) 其實一樣
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/200436.html
標籤:C語言
上一篇:c++有參建構式和拷貝建構式
