Algorithm java-大O表示法-MlogN和MlogM之间的区别?
如果我想找到Algorithm java-大O表示法-MlogN和MlogM之间的区别?,algorithm,big-o,Algorithm,Big O,如果我想找到mlog(N)+mlog(M)的主导项,我应该怎么做?MlogN和MlogM之间有什么区别?哪一个占优势取决于M>N还是MN,Mlog(N)N还是MN,Mlog(N)
mlog(N)+mlog(M)
的主导项,我应该怎么做?MlogN和MlogM之间有什么区别?哪一个占优势取决于M>N
还是M
。如果M>N
,Mlog(N)
。如果M
,则M log(N)>M log(M)
。全面分析:
- 保持M不变并允许N变化,这是
O(log(N))
- 保持N不变并允许M变化,这是
O(M log(M))
- 允许N和M都变化,这是
O(M log(N)+M log(M))=O(M(log(N)+log(M))=O(M log(MN))
M
和N
之间存在明确的关系,如果是这样,用这种关系得出你的答案。否则,一般来说,没有单一的“支配性”术语,因为主导因素取决于N
和M
之间的关系
也就是说,如果你比较类似的增加,单独增加
M
会比单独增加N
更快地增加表达式的值。哪一个占优势取决于M>N
还是M
。如果M>N
,Mlog(N)
。如果M
,则M log(N)>M log(M)
。完整分析:
- 保持M不变并允许N变化,这是
O(log(N))
- 保持N不变并允许M变化,这是
O(M log(M))
- 允许N和M都变化,这是
O(M log(N)+M log(M))=O(M(log(N)+log(M))=O(M log(MN))
M
和N
之间存在明确的关系,如果是这样,用这种关系得出你的答案。否则,一般来说,没有单一的“支配性”术语,因为主导因素取决于N
和M
之间的关系
也就是说,如果比较类似的增加,那么单独增加M
会比单独增加N
更快地增加表达式的值